node 큐에 정점을 입력하는 53 54번째 줄이 문제입니다.
존재하는 모든 정점에 대해 각각 한번씩 bfs를 돌려 확인하는게 맞는데, 주어진 연결 요소들에 대해서만 모두 bfs를 돌리고 있어요.
6 5 1 2 2 5 5 1 3 4 4 6
이 예시입력같은 경우 node 큐에
1,2,2,5,5,1,3,4,4,6 가 다 들어가있어요.
불필요하게 bfs를 돌리는것도 문제지만
3 1
1 2
이런 입력같은 경우, node 큐에 1과 2만 들어가있기때문에 3정점에 대해 bfs 를 돌리지 못해 정답은2지만 출력이 1로 나오고 있어요.
johyesong8686 4년 전
어떤 논리가 틀린지 모르겠습니다 ㅜㅜ
1.정점을 입력받는다. ==>이때 queue에하나씩 넣어줌
2.queue에서 하나씩 정점을 꺼내서 bfs가 가능하면 연결요소 갯수 num을 늘려줌
==>연결 요소가 여러개 인 경우에 횟수를 확인하게 위해서 많일 같은 연결요소에 속해있다면
bfs를 통해 이미 방문 되었을 것이고 횟수에 포함되지 않는다.