본문 바로가기

■ 알고리즘 문제 풀이/BOJ

[BOJ] 백준 14502. 연구소

▶문제설명



▶Hint


브루트포스 & BFS 문제이다.

벽(1)을 3개 놓는 모든 경우에 대하여 바이러스를 최대한 확산시켜본다.

각 경우에 대하여 안전 영역의 크기를 구하고, 가장 큰 값을 답으로 출력하면 된다.


1. 입력을 받으면서 1의 개수를 카운트한다.

2. 벽(1)을 3개 놓는 모든 경우에 대하여 3~4를 수행

3. 바이러스를 최대한 확산 시키면서 바이러스의 개수를 카운트한다.

4. N*M (맵의 전체 크기) - 1의 개수 - 바이러스의 개수 - 3 (벽을 무조건 3개 놓으므로) = 안전영역의 크기

5. 2~4 과정에서 최대값을 구해 답으로 출력한다.



▶Solution