문제 링크 : https://www.acmicpc.net/problem/9372
풀이
상근이가 최소한의 수의 비행기로 모든 나라를 돌아다니는 것은 최소 신장 트리를 순회하는 것과 동일하다.
(정점 - 1) 개의 간선이 최소 신장 트리에 존재하므로, 비행기도 (정점 - 1) 개를 타게 된다.
#include <iostream>
int t, n, m, a, b;
using namespace std;
int main(){
cin >> t;
while(t--){
cin >> n >> m;
while(m--){
cin >> a >> b;
}
cout << n-1 << "\n";
}
}
'알고리즘 > 알고리즘 문제 풀이' 카테고리의 다른 글
(JAVA) 금과 은 운반하기 (3) | 2024.01.21 |
---|---|
(JAVA) 백준 2805번 - 나무 자르기 (1) | 2023.12.27 |
(C++) 백준 1368번 - 물대기 (0) | 2023.06.19 |
(C++) 백준 1197번 - 최소 스패닝 트리 (0) | 2023.06.19 |
(C++) 백준 2252번 - 줄 세우기 (0) | 2023.06.19 |