일반 그래프 최대 가중치 매칭

가중 무방향 그래프가 주어졌을 때, 간선 가중치 합이 최대인 매칭을 찾는다.

어려움9그래프그리디동적 계획법아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

정점이 NN개이고 무방향 간선이 MM개인 가중치 그래프가 주어진다. 이 그래프에서 최대 가중치 매칭의 가중치 합을 출력하는 프로그램을 작성하시오.

그래프 G=(V,E)G = (V, E)에서 매칭 TTEE의 부분집합이고, TT에 속한 어떤 두 간선도 같은 정점을 공유하지 않는다. 최대 가중치 매칭은 그런 매칭 중 간선 가중치의 합이 가장 큰 것을 말한다. 간선을 하나도 고르지 않은 공집합도 매칭이다.

입력

첫째 줄에 정점의 수 NN(1N4001 \le N \le 400)과 간선의 수 MM(1MN(N1)/21 \le M \le N(N-1)/2)이 주어진다.

둘째 줄부터 MM개의 줄에 걸쳐 각 간선의 정보가 주어진다. 한 줄에는 그 간선이 잇는 서로 다른 두 정점의 번호와 가중치가 주어진다.

정점의 번호는 1 이상 NN 이하의 자연수이고, 간선의 가중치는 1 이상 500,000,000 이하의 자연수이다. 두 정점 사이에 간선은 최대 1개이다.

출력

첫째 줄에 최대 가중치 매칭의 가중치 합을 출력한다.