题目链接:

http://acm.hdu.edu.cn/showproblem.php?pid=2119

解题思路:

处理数据,使用公式最小点覆盖数=最大匹配数,使用匈牙利算法求二分图最大匹配即可。

AC代码:

 #include<stdio.h>
#include<string.h>
int n,m,e[][],book[],cx[],cy[];
int Maxmatch();
int path(int u);
int main()
{
int i,j;
while(scanf("%d",&n), n != )
{
scanf("%d",&m);
for(i=;i<=n;i++)
for(j=;j<=m;j++)
scanf("%d",&e[i][j]);
printf("%d\n",Maxmatch());
}
return ;
}
int Maxmatch()
{
int i,res=;
memset(cx,0xff,sizeof(cx));
memset(cy,0xff,sizeof(cy));
for(i=;i<=n;i++)
{
if(cx[i] == -)
{
memset(book,,sizeof(book));
res += path(i);
}
}
return res;
}
int path(int u)
{
int v;
for(v=;v<=m;v++)
{
if(e[u][v] && !book[v])
{
book[v]=;
if(cy[v] == -|| path(cy[v]))
{
cx[u]=v;
cy[v]=u;
return ;
}
}
}
return ;
}

最新文章

  1. MVVM开发模式简单实例MVVM Demo【续】
  2. HTML 5 视频(video)
  3. linux系统无法启动解决方案
  4. python 安装easy_install和pip
  5. Unity3D特效-场景淡入淡出
  6. bzoj 1818: [Cqoi2010]内部白点
  7. 2 TKinter绑定事件
  8. H5下拉刷新特效demo,动画流畅
  9. TesserOCR训练
  10. 论 &lt;%@taglib prefix=&quot;s&quot; uri=&quot;/struts-tags&quot; %&gt; 的重要性
  11. 1.Date对象
  12. Java开发笔记(二十七)数值包装类型
  13. python 错误捕获机制分析
  14. java中的默认类型+spring
  15. 【vue】vue +element 搭建项目,实现实时输入效果时停止输入后发送请求
  16. 搭建自己的Docker registry(五)
  17. fork()函数、进程表示符、进程位置
  18. CSS cursor 属性改变鼠标的样式
  19. MySQL ERROR 1054 的问题
  20. HDU 4568 SPFA + TSP

热门文章

  1. lesson - 11 课程笔记
  2. Extjs 取消backspace事件
  3. centos 打包RPM包 ntopng
  4. centos7 安装solr
  5. HTML5图片上传本地预览
  6. JAVA的命名方式 ,JAVA的第一个打印时间的程序
  7. Java第二章----对象和类
  8. vue2.0 微信oauth认证的正确调用位置
  9. [Spark内核] 第28课:Spark天堂之门解密
  10. xssgame挑战wp