2026-02-10
오늘 푼 문제
- 백준 2468번
오늘 헷갈렸던 점
- from collections import deque를 너무 오랜만에 봤다
- 비가 오는 건 while문으로 처리해야하는 걸 알았는데 인접 영역을 하나로 세는 것과 비가 오는 상황에 총 인접영역 개수를 어떻게 세야하는지 헷갈렸다. -> 방문 처리를 하면된다.
- 방문 배열을 만들고 카운트를 0으로 만든다.
- 방문 배열은 지금 비가 오는 상황에서 한 번이라도 방문했는지, 즉 센 칸인지를 종합적으로 보는 거고 카운트는 인접 영역을 세는 것이다.
- 방문하지 않았다면 우선 세고 방문 체크를 한 후 큐로 인접 영역을 탐색한다. 방문처리를 하면서 큐가 빌 때까지 반복한다. 이 때 세는 건 맨 처음 한 번만 센다. (인접영역까지 모두 하나이므로)
- 언제 max_result를 갱신해야하는지 헷갈렸다.
- 비가 특정 높이만큼 온 시점에서 모든 인접 영역을 세고, 방문처리를 하고 나서가 count가 다 세어진 시점이므로 이 때 max_result보다 큰지 확인하고 갱신한다.
- 이 이후에 다음 높이의 비 상황으로 간다.
후기
queue와 더 친숙해진 것 같다.