PS알못 OrbitHv의 PS logo PS알못 OrbitHv의 PS

태그:

23. DFS와 BFS CLASS 3 ESSENTIAL

사각형 격자에 토마토가 들어있을 때 모든 토마토가 익는 데에 걸리는 시간을 구하는 문제입니다. 문제가 생긴게 BFS를 쓰기 좋게 생겼는데, 익은 토마토를 시작점으로 하여 주위의 토마토가 익는 데에 걸리는 시간을 구하면 됩니다. 다만, 각 토마토에 대해 각각 BFS를 돌리면 시간 상 문제가 생길 수가 있습니다. 따라서 익은 토마토의 위치를 모두 기억해놓고, BFS를 돌릴 큐에 모든 익은 토마토 위치를 집어넣고 BFS를 한번에 돌리면 시간을 절약할 수 있습니다.(ex) 14, 7 거리의 BFS 돌릴거 7, 7로 줄일 수 있습니다.)

소스 코드

언어 코드 시간
C++ 코드(Github) / 코드(백준) 2020-12-21 23:55:57