가중 무방향 그래프가 주어졌을 때, 간선 가중치 합이 최대인 매칭을 찾는다.
정점이 NNN개이고 무방향 간선이 MMM개인 가중치 그래프가 주어진다. 이 그래프에서 최대 가중치 매칭의 가중치 합을 출력하는 프로그램을 작성하시오.
그래프 G=(V,E)G = (V, E)G=(V,E)에서 매칭 TTT는 EEE의 부분집합이고, TTT에 속한 어떤 두 간선도 같은 정점을 공유하지 않는다. 최대 가중치 매칭은 그런 매칭 중 간선 가중치의 합이 가장 큰 것을 말한다. 간선을 하나도 고르지 않은 공집합도 매칭이다.
첫째 줄에 정점의 수 NNN(1≤N≤4001 \le N \le 4001≤N≤400)과 간선의 수 MMM(1≤M≤N(N−1)/21 \le M \le N(N-1)/21≤M≤N(N−1)/2)이 주어진다.
둘째 줄부터 MMM개의 줄에 걸쳐 각 간선의 정보가 주어진다. 한 줄에는 그 간선이 잇는 서로 다른 두 정점의 번호와 가중치가 주어진다.
정점의 번호는 1 이상 NNN 이하의 자연수이고, 간선의 가중치는 1 이상 500,000,000 이하의 자연수이다. 두 정점 사이에 간선은 최대 1개이다.
첫째 줄에 최대 가중치 매칭의 가중치 합을 출력한다.