백준 2638 치즈 (dfs + bfs)
https://www.acmicpc.net/problem/2638 상, 하, 좌, 우로 인접하고 값이 1인 치즈의 테두리값을 지워나가서 모든 치즈가 녹을 때까지 걸리는 시간을 구하는 문제다. 조건이 하나있는데 치즈 내부에 빈공간에 대해서는 노출된 면이 2면이어도 녹지 않는다는 것이다. 따라서 내부의 빈공간을 다른 값으로 마킹해야하는 것이 중요하다고 생각했다. 내부의 공간을 하는 것보다 외부의 값을 마킹하고 나머지 0부분을 내부값으로 쓰는 것이 좋다고 생각해서 외부값을 먼저 -1로 치환하고 난 다음, 치즈 테두리의 상하좌우값이 -1인것이 2개 이상이면 녹이고 나서 내부의 0을 다시 -1로 치환하는 방식으로 풀었다. 순서는 다음과 같다. 바깥에 이어져있는 0을 모두 -1로 치환한다. 각 치즈의 좌표에서 인접..
문제풀이
2021. 7. 12. 18:09
반응형
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
농담곰의 고군분투 개발기