너비 우선 탐색을 살짝 응용하면 되는 문제이다. 문제를 보면 노드의 수 (동기의 수), 주어지는 노드간 연결관계의 수 (리스트의 길이), 노드간 연결관계 (친구 관계) 가 주어진다. 이를 이용하여 문제를 풀 수 있다. 너비 우선 탐색 문제를 풀기 위해서는 너비 우선 탐색에 관한 알고리즘의 이해가 필요하다. 2중 반복문을 이용해서 풀 수도 있으나, 너비 우선 탐색을 사용하는 것이 다른 문제에 응용하기 좋다. 너비 우선 탐색은 그래프 탐색에 사용된다. 목표 지점에 도달하기 위해서 경로를 탐색하되, 출발점에서 같은 거리의 노드를 탐색한다. 여기에는 큐가 필이 사용된다. bfs의 기본 원리는 다음과 같다. 시작 노드를 queue에 저장한 후 bfs 탐색을 실행한다. 큐에 있는 노드를 pop 한 후 해당 노드에 ..