playscer   2년 전

문제를 풀긴하였는데...이 코드는 왜 안 되는 건지 싶어서 질문 올려봅니다. 

로직)

m,n(가로,세로)을 입력 받고 앞으로 가로 세로를 배열 상에서 x,y순으로 그대로 구현하겠습니다.
이대로 배열 정보를 입력 받는데, 만약 토마토가 있는 곳이라면 이를 큐에 좌표를 넣고(pair) 방문 처리 해줍니다.
그 다음, bfs를 구현하는데 큐의 사이즈가 없어질 때까지 탐색이 한 level에서 끝날 때마다 일 수++ 합니다.
물론, 탐색을 진행할 때 한 토마토의 위치에서 사방을 탐색해보는데, 사방 중 한 방향이라도 익을 수 있는 토마토가 존재한다면 flag같은 변수를 두어서 관리하는데, false라면 계속 탐색을 해야 한다, true라면 이제 익을 수 있는 토마토는 었다는 것이니, 배열 전체를 첫 인덱스부터 x,y 끝 인덱스까지 탐색해봅니다. 이때 탐색하는데 안 익은 토마토(0)이 존재한다면 -1을 출력하고, 아니라면 일 수를 출력하도록 하였습니다.

풀때는 물론 토마토의 총 개수를 관점으로 두고 풀었는데, 이 방법은 어느 부분에서 막히는지 잘 모르겠어서 질문 드립니다!

댓글을 작성하려면 로그인해야 합니다.