【模板】一般图最大权匹配

题目背景

模板题,无背景。

题目描述

给定一张有 $n$ 个顶点的无向带权图,有 $m$ 条带权边。 求一种匹配的方案,使得最终匹配边的边权之和最大。

输入输出格式

输入格式


第一行两个数,$n$ 和 $m$。 接下来 $m$ 行,每行 $3$ 个数:$u$,$v$,$w$,表示点 $u$ 与点 $v$ 之间有一条边权为 $w$ 的边。

输出格式


第一行一个数,最大边权和。 接下来一行 $n$ 个整数,描述一组最优方案。第 $v$ 个整数表示点 $v$ 匹配的点的编号。如果 $v$ 号点没有匹配,请输出 0。

输入输出样例

输入样例 #1

7 20
5 7 9
3 7 4
3 6 6
2 5 8
5 1 9
1 3 6
6 5 1
2 7 4
2 3 5
6 4 2
7 1 5
5 4 4
4 1 3
5 3 9
7 6 4
2 1 3
4 3 9
6 2 7
4 2 8
6 1 10

输出样例 #1

28
6 0 4 3 7 1 5

说明

$1 \le n \le 400$,$1 \le m \le 79800$,$1 \le w \le 5\times10^8$。