postcookie   2년 전

안녕하세요?

10026번 문제를 BFS로 풀었는데요.

도대체 어디서 시간 초과가 나는지 모르겠습니다.

너무 궁금해서 다른 코드들도 찾아봤지만 제 코드와 근본적으로 다른 부분은 딱히 없어보입니다. grid를 색약 대상으로 바꾸고 다시 2중 for 루프 도는 것도 다른 코드와 똑같은데 왜 계속 시간 초과를 받는지 이해가 안 됩니다.

도와주시면 감사하겠습니다.

postcookie   2년 전

자문자답입니다. 

bfs에서 while문을 검사할 때, visited를 언제 하냐가 문제였습니다.

visited[x][y]를 큐에서 뺄 때 검사하니 여러 번 들어갈 수 있다는 문제였네요.

이 답을 보기 전에 답답해서 dfs로 바꿔서 제출했지만.. ㅎㅎ 저처럼 bfs로 시간 초과나시는 분들이 참고하시기를 바랍니다.

ninykwon19   1년 전

덕분에 통과했습니다. 감사합니다^^

battlekjh   1년 전

와 감사합니다 ㅋㅋㅋ 이거였네요

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