POJ 1274
#include<iostream>
#include<stdio.h>
#include <string.h>
#include <vector>
#define MAXN 251
#define _clr(x) memset(x,0xff,sizeof(int)*MAXN)
#define _clr(x) memset(x,0xff,sizeof(int)*MAXN) using namespace std; int hungary(int m,int n,int mat[][MAXN],int* match1,int* match2);
int _m[MAXN][MAXN];
int match1[MAXN];
int match2[MAXN];
int main()
{
//freopen("acm.acm","r",stdin);
int M;
int N;
int n;
int i;
int j;
// bool M_N;
int s;
while(cin>>M>>N)
{
// if(M <= N)
// M_N = true;
for(i = ; i < MAXN; ++i)
{
memset(_m[i],,sizeof(int)*MAXN);
}
for(i = ; i < M; ++ i)
{
cin>>s;
for(j = ; j < s; ++ j)
{
cin>>n;
// if(M_N)
// {
_m[i][n-] = ;
// }
// else
// {
// _m[n-1][i] = 1;
// }
}
}
// if(M_N)
cout<<hungary(M,N,_m,match1,match2)<<endl;
// else
// cout<<hungary(N,M,_m,match1,match2)<<endl;
}
} int hungary(int m,int n,int mat[][MAXN],int * match1,int* match2){
int s[MAXN],t[MAXN],p,q,ret=,i,j,k;
for (_clr(match1),_clr(match2),i=;i<m;ret+=(match1[i++]>=))
for (_clr(t),s[p=q=]=i;p<=q&&match1[i]<;p++)
for (k=s[p],j=;j<n&&match1[i]<;j++)
if (mat[k][j]&&t[j]<){
s[++q]=match2[j],t[j]=k;
if (s[q]<)
for (p=j;p>=;j=p)
match2[j]=k=t[j],p=match1[k],match1[k]=j;
}
return ret;
}
关注我的公众号,当然,如果你对Java, Scala, Python等技术经验,以及编程日记,感兴趣的话。

技术网站地址: vmfor.com
POJ 1274的更多相关文章
- POJ 1274 The Perfect Stall、HDU 2063 过山车(最大流做二分匹配)
The Perfect Stall Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 24081 Accepted: 106 ...
- Luogu 1894 [USACO4.2]完美的牛栏The Perfect Stall / POJ 1274 The Perfect Stall(二分图最大匹配)
Luogu 1894 [USACO4.2]完美的牛栏The Perfect Stall / POJ 1274 The Perfect Stall(二分图最大匹配) Description 农夫约翰上个 ...
- poj——1274 The Perfect Stall
poj——1274 The Perfect Stall Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 25709 A ...
- POJ 1274 The Perfect Stall || POJ 1469 COURSES(zoj 1140)二分图匹配
两题二分图匹配的题: 1.一个农民有n头牛和m个畜栏,对于每个畜栏,每头牛有不同喜好,有的想去,有的不想,对于给定的喜好表,你需要求出最大可以满足多少头牛的需求. 2.给你学生数和课程数,以及学生上的 ...
- [题解]poj 1274 The Perfect Stall(网络流)
二分匹配传送门[here] 原题传送门[here] 题意大概说一下,就是有N头牛和M个牛棚,每头牛愿意住在一些牛棚,求最大能够满足多少头牛的要求. 很明显就是一道裸裸的二分图最大匹配,但是为了练练网络 ...
- [题解]poj 1274 The Prefect Stall
Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 22736 Accepted: 10144 Description Far ...
- Poj(1274),二分图匹配
题目链接:http://poj.org/problem?id=1274 The Perfect Stall Time Limit: 1000MS Memory Limit: 10000K Tota ...
- [POJ] 1274 The Perfect Stall(二分图最大匹配)
题目地址:http://poj.org/problem?id=1274 把每个奶牛ci向它喜欢的畜栏vi连边建图.那么求最大安排数就变成求二分图最大匹配数. #include<cstdio> ...
- poj 1274 The Perfect Stal - 网络流
二分匹配传送门[here] 原题传送门[here] 题意大概说一下,就是有N头牛和M个牛棚,每头牛愿意住在一些牛棚,求最大能够满足多少头牛的要求. 很明显就是一道裸裸的二分图最大匹配,但是为了练练网络 ...
- poj 1274 The Prefect Stall - 二分匹配
Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 22736 Accepted: 10144 Description Far ...
随机推荐
- 菜鸟学习Spring——60s配置XML方法实现简单AOP
一.概述. 上一篇博客讲述了用注解的形式实现AOP现在讲述另外一种AOP实现的方式利用XML来实现AOP. 二.代码演示. 准备工作参照上一篇博客<菜鸟学习Spring--60s使用annota ...
- SQL 集合(笔记)
——SQL是关于集合的 oracle是关系型数据,其中的数据表都是有一定规律的数据的一个个集合,所以在使用SQL时,如果能按照集合的思路来进行时会节省很多效率,也鞥让语句更加的清晰明了. 1.四个集合 ...
- GraphLab面向机器学习的并行框架『针对图数据处理模型』
最近在做文本处理知识的梳理,关注了CMU提出的GraphLab开源分布式计算系统 这是关于GraphLab的PPT:Distributed GraphLab『 http://cheng-qihang- ...
- OpenGL完整实例
结合上一节的内容,分享完整代码. 先画一个cube,然后通过OnGestureListener去触发onFling使它旋转起来. OnGestureListener相关的方法我已经都加了注释,可以参考 ...
- ExtJS MVC学习手记 1
开发环境: ExtJS4.2 eclipse indigo 开发目标 搭建项目框架,创建viewport 开发步骤说明 这次主要使用extjs4的mvc模式创建viewport.籍此初步了解mvc模 ...
- 如何在Window上使用Git
开始的时候同事只给了一个地址,类似这样:git@111.111.1.1:ABCDEF (1)如何在Windows上使用Git 有一篇博客不错:http://www.tuicool.com/articl ...
- Quartus II Error总结与解答
(1).Error (209015): Can't configure device. Expected JTAG ID code 0x020B20DD for device 1, but found ...
- PB数据类型转换表
数据类型转换表 MICROSOFT PB(16Bit) PB(32Bit) Bool Boolean ...
- OC学习心得【适合初学者】
一.类和对象 1.OC语言是C语言的扩充,并且OC是iOS和OS X操作系统的编程语言. ①具备完善的面向对象特性: 封装:将现实世界中存在的某个客体的属性与行为绑定在一起,并放置在一个逻辑单元内 继 ...
- 通过find命令寻找文件并拷贝到一个指定目录方法详解
有这样的一个需求,需要将一部分符合条件的文件从一个目录拷贝到另一个目录中,可以通过使用find命令从源目录查找到符合条件的文件然后使用cp命令拷贝到目标目录 将通过find命令找到的文件拷贝到一个 ...