kbiglight   3년 전

이 문제를 풀기 위해 bfs를 고려했습니다. 먼저 입력을 받을때 1인 경우 좌표를 queue에 먼저 넣어놓고

이 큐를 통해 bfs를 진행하며 +1을 해주면서 맵을 채워가는 방식을 채택했습니다.

그리고 맵에 0이 남아 있다면 0을 출력하게

없다면 max값을 출력하게 코드를 짰습니다. 

혹시 이렇게 풀면 어디서 논리적 오류가 발생할까요...? ㅠㅠ

밑은 그를 토대로 구현한 코드입니다

shg9411   3년 전

max(max(visited))를 한다고 원하는 결과가 나오시진 않을 것 같습니다.

만약 visited가 [[5,1],[1,6]]라면

원하는 값은 6이겠지만, 출력 값은 5가 나오지 않을까요?

shg9411   3년 전

0 in graph도 비슷한 이유로 원하시는데로 작동하지 않을 것 같은데요.

kbiglight   3년 전

@shg9411

일단 예시 코드들은 다 정상 작동 되던데....

1 -1

-1 1도 정상적으로 0이 나옵니다....2번 예시도 정상적으로 -1이 나오고...

kbiglight   3년 전

테스트 해보니까.... shg9411 님의 말씀이 맞네요....

max(max()) 부분에서 문제가 발생하네요.... 감사합니다 ㅠㅠ

kbiglight   3년 전

6 5
0 0 1 0 0 0
0 0 0 0 0 0
1 0 0 0 0 0
0 0 0 0 0 0
0 0 1 0 0 0 

가 좋은 반례가 되었습니다 언제나 도움주셔서 감사합니다 (_ _)

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