#P1205. 男生女生配

男生女生配

题目描述

nn 个男生,编号从 11nn,编号也是从 11nn

他们之间有 mm 对友好关系,第 ii 对友好关系表示为两个整数 uiu_iviv_i1ui,vin1 \le u_i, v_i \le n),表示第 uiu_i 个男生和第 viv_i 个女生是友好关系。

现在你需要从这 2n2n 个人中选出尽可能多的舞伴,一对舞伴办好恰好一个男生和一个女生,但是只有具有友好关系的男女生之间才能组成舞伴,不具有友好关系的男女生之间不能组成舞伴。并且每个人最多只能有一个舞伴。

问:最多能够组成多少对舞伴?

输入格式

一行,两个整数 nnmm,以一个空格分隔(1n500,0mmin{105,n2}1 \le n \le 500, 0 \le m \le \min\{ 10^5, n^2 \})。

接下来 mm 行,每行包含两个整数 uiu_iviv_i1ui,vin1 \le u_i, v_i \le n),表示第 uiu_i 个男生和第 viv_i 个女生是友好关系。

输出格式

输出一个整数,表示最多能够组成多少对舞伴。

样例

4 6
1 2
1 4
2 2
3 2
3 4
4 1
3

说明/提示

数据规模与约定

  • 对于 30%30\% 的数据,n50,m1000n \le 50, m \le 1000
  • 对于 100%100\% 的数据,1n500,0mmin{105,n2}1 \le n \le 500, 0 \le m \le \min\{ 10^5, n^2 \}