GIANT MIN COST BIPARTITE MATCHING

아직 제출이 없습니다시간 제한4.2초메모리 제한512 MB

문제

왼쪽 정점, 오른쪽 정점의 개수가 NN개, 간선의 개수가 MM개, 각 정점의 degree가 최대 2인 이분 그래프가 주어진다. 왼쪽 정점과 오른쪽 정점에는 각각 11부터 NN까지 번호가 매겨져 있고, 서로 다른 두 정점 사이에는 최대 한 개의 간선이 존재한다.

Matching은 간선의 양 끝점이 중복되지 않게 선택한 간선의 집합을 의미한다. 크기가 11, 22, ..., NN인 Matching의 최소 비용을 각각 구해보자.

입력

첫 번째 줄에 정점의 개수 NN, 간선의 개수 MM이 주어진다. (1N500,0001 \le N \le 500\\,0000 M 2N0 \le M \le 2N)

다음 MM개의 줄에 걸쳐서 간선의 정보를 나타내는 (x,y,c)(x,y,c)가 순차적으로 주어진다. xx는 왼쪽 정점의 번호, yy는 오른쪽 정점의 번호, cc는 해당 간선의 비용을 의미한다. (1x,yN1 \le x,y \le N, 1c1,000,000,0001 \le c \le 1\\,000\\,000\\,000)

출력

NN개의 줄에 걸쳐서 ii번째 줄에 크기가 ii인 Matching의 최소 비용을 출력하자. 만약에 이러한 Matching이 없는 경우 -1을 출력한다.