johyesong8686   3년 전

사이클일때를 bfs로 어떻게 돌아야 할지 몰라서

시작점(start)에서 가장 먼거리 좌표 (max_)

먼거리 좌표(max_)에서 가장 먼거리 좌표(maxx_)

maxx_와 start가 같고, 거리가 3이상 일때 ==>사이클이라고 판단

이런식으로 논리를 세워서 풀었습니다 ㅜㅜ

혹시 논리가 틀렸나요 ?

틀렸다면 사이클을 확인하기 위한 다른 논리를 알수있을까요 ?

eve8108   3년 전

반례입니다.

4 4

BBBB

AABA

BAAA

BBBB

작성자님의 알고리즘대로 하면 위의 예시에서 cycle이 없지만 cycle이 존재한다고 생각하고 Yes를 출력하게 됩니다.

dfs로 풀어보심이 어떠실지요.

johyesong8686   3년 전

감사합니다! 아예 저 논리로는 불가능 하겠군요~

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