https://www.acmicpc.net/problem/1245

 

1245번: 농장 관리

첫째 줄에 정수 N(1 < N ≤ 100), M(1 < M ≤ 70)이 주어진다. 둘째 줄부터 N+1번째 줄까지 각 줄마다 격자의 높이를 의미하는 M개의 정수가 입력된다. 격자의 높이는 500보다 작거나 같은 음이 아닌 정수

www.acmicpc.net

BFS 문제다. 산봉우리라고 판단하는 조건에 대해 고민해봐야 하는 문제다.

 

풀이

현재 좌표 기준 8방향 좌표의 높이를 탐색하고, 한 번이라도 보다 더 높은 좌표가 발견된다면 해당 탐색은 산봉우리가 아닌 것으로 처리한다. 만일 같은 높이의 좌표가 발견된다면 큐에 넣고 탐색을 이어간다. 탐색 큐를 모두 살펴본 뒤 마지막에 산봉우리인지 아닌지에 대한 flag를 확인하여 산봉우리의 개수를 추가해주면 된다. 당연하게도 무한루프에 빠질 수 있으니 방문 배열을 만들어 처리해야 한다.

 

정답 코드

'Problem Solving > BOJ' 카테고리의 다른 글

[14891] 톱니바퀴  (0) 2022.11.09
[13335] 트럭  (0) 2022.11.07
[1148] 단어 만들기  (0) 2022.11.03
[1195] 킥다운  (1) 2022.11.02
[1915] 가장 큰 정사각형  (0) 2022.11.01

+ Recent posts