konduck196   2년 전

안녕하세요 

BFS로 문제를 풀고 있습니다. 

하나의 노드가 속할 수 있는 color로는 1과 -1로 하였고 , 각 노드의 색을 확인하기 위한 color table은 0으로 초기화하는 것으로 하였습니다. 

그래프는 인접리스트로 구현하였습니다. 

1. 모든 노드를 전체탐색하며, 아직 color가 부여되지 않은 노드부터 BFS탐색을 시작합니다. 

2. BFS를 진행하며 , 큐에서 꺼낸 현재노드의 인접노드에서는 다음을 확인합니다.

2.1 현재노드와 같은 색을 이미 가진 경우 --> return false

2.2.현재노드와 다른 색을 이미 가진 경우 --> continue

2.3 아직 아무런 색이 부여되지 않은 경우 --> 큐에 추가 && 현재 노드색의 반대 색을 부여 

3. BFS탐색결과 false가 리턴이 되면, 전체탐색도 멈추고, 해당 케이스는 NO를 출력하게 됩니다. 

3-1. 모든 노드에 대해, BFS탐색결과에서 false가 한 번도 리턴된 적 없다면 flag는 true이기 때문에, 해당 케이스는 YES를 출력하게 됩니다. 

ㅠㅠ 제 눈으로는 더이상 버그 탐색을 못하는 것 같습니다.. 도움이 필요합니다 

cjhgg2   2년 전

53, 54 번째 줄에서 v를 i로 바꿔보세요  

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