[Usaco2007 Open]Dining吃饭
农夫 John 为奶牛们准备了许多食物和饮料,但每头奶牛只喜欢其中的一部分。虽然不一定能喂饱所有奶牛,他仍希望让尽可能多的奶牛同时得到喜欢的食物和饮料。
农夫 John 准备了 种食物和 种饮料,并且已经知道 头奶牛各自喜欢哪些食物和饮料。他希望为尽可能多的奶牛各分配一种喜欢的食物和一种喜欢的饮料。
每种食物和每种饮料都只能分配给一头奶牛。例如,如果编号为 的食物已经分配给某头奶牛,其他奶牛就不能再获得这种食物。
请计算最多可以喂饱多少头奶牛。
输入格式
第一行包含三个整数 、 和 ,分别表示奶牛数量、食物种类数和饮料种类数。
接下来 行,第 行首先包含两个整数 和 ,分别表示第 头奶牛喜欢的食物数量和饮料数量。随后依次给出 个食物编号和 个饮料编号。
输出格式
输出一个整数,表示最多可以喂饱的奶牛数量。
样例输入
4 3 3
2 2 1 2 3 1
2 2 2 3 1 2
2 2 1 3 1 2
2 1 1 3 3
样例输出
3
样例解释
各头奶牛的喜好如下:
- 奶牛 喜欢编号为 、 的食物,以及编号为 、 的饮料;
- 奶牛 喜欢编号为 、 的食物,以及编号为 、 的饮料;
- 奶牛 喜欢编号为 、 的食物,以及编号为 、 的饮料;
- 奶牛 喜欢编号为 、 的食物,以及编号为 的饮料。
一种最优分配方案如下:
- 不给奶牛 分配食物和饮料;
- 给奶牛 分配编号为 的食物和编号为 的饮料;
- 给奶牛 分配编号为 的食物和编号为 的饮料;
- 给奶牛 分配编号为 的食物和编号为 的饮料。
由于总共只有 种食物和 种饮料,因此不可能喂饱超过 头奶牛。
数据范围
- ;
- ;
- 。
来源与许可
本题为 USACO 2007 Open 试题「Dining(吃饭)」,题面与测试数据整理自 BZOJ。
样例 1
输入
4 3 3
2 2 1 2 3 1
2 2 2 3 1 2
2 2 1 3 1 2
2 1 1 3 3
输出
3