【模板】一般图最大匹配

题目背景

模板题,无背景。

题目描述

给出一张 $n$ 个点 $m$ 条边的无向图,求该图的最大匹配。

输入输出格式

输入格式


第一行两个正整数 $n$ 和 $m$,分别表示图的点数和边数。 接下来 $m$ 行,每行两个正整数 $u$ 和 $v$,表示图中存在一条连接 $u$ 和 $v$ 的无向边。

输出格式


第一行一个整数,表示最大匹配数。 第二行 $n$ 个整数,第 $i$ 个数表示与结点 $i$ 匹配的结点编号,若该结点无匹配则输出 $0$。 如有多解输出任意解即可。

输入输出样例

输入样例 #1

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

输出样例 #1

4
7 9 10 6 0 4 1 0 2 3 

说明

对于 $50\%$ 的数据,$n\le500$。 对于 $100\%$ 的数据,$2\le n\le10^3$,$1\le m\le5\times10^4$。 本题有 5 组 extra test。 #### 提示 为了方便你调试你的程序,出题人在[这里](https://www.luogu.com.cn/paste/vf7dlo6r)为你提供了一个~~写的很丑的~~数据生成器。