본문 바로가기

알고리즘 문제풀이/알고리즘 C++ 풀이

[백준] 4179번: 불! (C++ 풀이)

문제 https://www.acmicpc.net/problem/4179

풀이

BFS로 풀었다.

1. 불이 모두 퍼지는데 걸리는 시간을 구하는 BFS를 먼저 구하고

지훈이에 대해 탈출하는데 걸리는 시간을 BFS로 구한다.

이때, 지훈이는 불이 다녀간 시간보다 먼저 그 곳을 가야한다.

2. 불은 하나일수도, 여러개일수도, 없을 수도 있다!

3. 마지막에 지훈이가 탈출하는데 걸리는 시간을 저장한 배열을 본다.

가장자리부분, 그러니까 행이 0, n-1부분과, 열이 0, m-1부분을 본다.

이부분에 지훈이가 다녀간 흔적이 있다면 그중에서 제일 최소인것을 고르면 그게 답이다!

없으면 탈출하지 못한 것이다!

 

코드 https://github.com/ziwonii24/Algorithm/blob/master/Baekjoon/4179.cpp

결과

불문제 지금 세번째인가 푸는데 왜 매번 이렇게 틀리는지,,휴,,