[백준 BOJ / Python] 1113번 수영장 만들기
문제주어진 2차원 배열에서 각 칸에 고일 수 있는 물의 양을 계산하는 문제이다. 각 칸의 물 높이는 주변에 있는 벽(높이가 더 큰 칸들)에 의해 제한되며, 물은 낮은 칸을 채워 나가면서 주위 벽에 의해 막히는 곳에만 고일 수 있다.풀이이 코드의 핵심은 외곽부터 낮은 높이의 칸을 우선 탐색하면서 물을 채워나가는 것이다.먼저, 외곽에 있는 칸들을 힙에 추가하고 높이가 낮은 칸부터 탐색을 시작한다.탐색하면서 주변에 더 낮은 높이의 칸이 있다면, 현재 칸의 높이만큼 물을 채우고 채운 물의 양을 답에 더한다.물 높이와 상관없이 방문하지 않은 칸이라면 방문 처리 후, 현재 높이와 좌표를 힙에 추가하여 계속해서 주변을 탐색한다.이 과정을 통해 최종적으로 고일 수 있는 물의 양을 계산한다.Python 코드import ..
Study/Coding Test
2024. 11. 17.