본문 바로가기
프로그래머스 C++

프로그래머스 가장 먼 노드 C++

by Srff5123 2025. 2. 27.
728x90

 

문제 설명

n개의 노드가 있는 그래프가 있다.

각 노드는 1부터 n까지 번호가 적혀있는데 1번 노드에서 가장 멀리 떨어진 노드의 개수를 구하려고 한다.

가장 멀리 떨어진 노드란 최단 경로로 이동할 때 간선의 개수가 가장 많은 노드이다.

 

노드의 개수 n, 간선의 정보가 담긴 2차원 배열  정점(vertex)가 매개변수로 주어질 때,

1번 노드로부터 가장 멀리 떻어진 노드가 몇 개 인지 return 하는 문제

 

간선은 양방향이며 뱌열의 a,b는 a번과 b번 노드 사이에 간선이 있다는 의미

가중치는 1

 

문제 풀이

다익스라를 이용해 1번에서 연결된 각 노드까지의 거리 벡터를 만들어 준다.

각 노드까지의 거리 벡터에서 가장 큰 값을 구하여

해당 값과 같은 값을 가진 노드를 발견할 때마다 answer에 ++ 해준다

 

728x90