shfshfdl   4년 전

BFS 시 visit 여부 체크 시점 문의드립니다.

BFS로 풀때 queue에 넣기 전에 visit을 체크해줘야지 중복으로 체크가 되지 않아

타임아웃이 발생하지 않는다고 알고 있는데

이 문제의 경우는 visit 시점이 +1 , -1, *2 를 처리한 값에 visit여부를 체크해서

성공을 받긴 햇는데 이런 경우 중복 체크가 될 것 같은데

제가 잘 못이해한 부분이 있을까요?

감사합니다.

lim551   4년 전

q를 뽑고 나서 visit을 체크하면 당연히 중복이 생깁니다. 그러나 이 문제의 경우 그 중복이 그렇게 크지 않습니다. +1로 인해 방문된 정점과 *2로 인해 방문된 정점이 중복되어 큐에 저장되긴 하지만, 2배씩 뛰는 경우 자체가 얼마 되지 않기 때문에 큰 중복이 발생하지는 않는 것 같습니다.

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