#A3155. 【例】二分图最大匹配

【例】二分图最大匹配

题目描述

给定一个二分图,其中左半部包含 n1n_1个点(编号 1∼n1n_1),右半部包含 n2n_2个点(编号 1∼n2n_2),二分图共包含 mm条边。

数据保证任意一条边的两个端点都不可能在同一部分中。

请你求出二分图的最大匹配数。

二分图的匹配​:给定一个二分图 GG,在 GG 的一个子图 MM中,MM的边集 E{E}中的任意两条边都不依附于同一个顶点,则称 MM 是一个匹配。

​二分图的最大匹配:​所有匹配中包含边数最多的一组匹配被称为二分图的最大匹配,其边数即为最大匹配数。

输入格式

第一行包含三个整数 n1n_1n2n_2mm

接下来 mm行,每行包含两个整数 uuvv,表示左半部点集中的点 uu 和右半部点集中的点 vv之间存在一条边。

输出格式

输出一个整数,表示二分图的最大匹配数。

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

提示

1n1,n2500,1≤n_1,n_2≤500,

1un1,1≤u≤n_1,

1vn2,1≤v≤n_2,

1m1051≤m≤10^5

时间复杂度

O(n1m)O(n_1m)