题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=2063

女生为X集合,男生为Y集合,求二分图最大匹配数即可。

  1. #include<cstdio>
  2. #include<iostream>
  3. #include<string.h>
  4. #include<algorithm>
  5. #include<math.h>
  6. #include<stdbool.h>
  7. #include<time.h>
  8. #include<stdlib.h>
  9. #include<set>
  10. #include<map>
  11. #include<stack>
  12. #include<queue>
  13. #include<vector>
  14. using namespace std;
  15. #define clr(x,y) memset(x,y,sizeof(x))
  16. #define sqr(x) ((x)*(x))
  17. #define rep(i,a,b) for(int i=(a);i<=(b);i++)
  18. #define LL long long
  19. #define INF 0x3f3f3f3f
  20. #define A first
  21. #define B second
  22. #define PI acos(-1.0)
  23. const int N=+;
  24. int n,m,k,f[N],g[N][N],link[N];
  25.  
  26. void init()
  27. {
  28. clr(f,);
  29. clr(g,);
  30. clr(link,-);
  31. }
  32.  
  33. bool find(int x)
  34. {
  35. for(int i=;i<=n;i++) {
  36. if(!f[i] && g[x][i]) {
  37. f[i]=;
  38. if(link[i]==- || find(link[i])) {
  39. link[i]=x;
  40. return true;
  41. }
  42. }
  43. }
  44.  
  45. return false;
  46. }
  47.  
  48. int hungary()
  49. {
  50. int ans=;
  51. for(int i=;i<=m;i++) {
  52. clr(f,);
  53. if(find(i)) ans++;
  54. }
  55. return ans;
  56. }
  57.  
  58. int main()
  59. {
  60. int u,v,k;
  61.  
  62. while(~scanf("%d",&k)) {
  63. if(!k) break;
  64. init();
  65. scanf("%d%d",&m,&n);
  66. while(k--) {
  67. scanf("%d%d",&u,&v);
  68. g[u][v]=;
  69. }
  70. printf("%d\n",hungary());
  71. }
  72.  
  73. return ;
  74. }

[HDU] 2063 过山车(二分图最大匹配)的更多相关文章

  1. hdu 2063 过山车 (二分图,最大匹配)

    过山车Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submissi ...

  2. HDU - 2063 过山车(最大匹配数)(模板)

    1.男生女生一起坐过山车,每一排有两个座位,但是有个条件,就是每个女生必须找个男生做同伴一起(但是女生只愿意和某几个男生中的一个做同伴),求最多可以有多少对男女生组合坐上过山车. 2.二分图的最大匹配 ...

  3. HDU 2063 过山车 (最大匹配,匈牙利算法)

    题意:中文题目 思路:匈牙利算法解决二分图最大匹配问题. #include <bits/stdc++.h> using namespace std; ; int mapp[N][N]; / ...

  4. HDU 2063 过山车 二分图题解

    一个男女搭配的关系图,看能够凑成多少对,基本和最原始的一个二分图谜题一样了,就是 一个岛上能够凑成多少对夫妻的问题. 所以是典型的二分图问题. 使用匈牙利算法,写成两个函数,就很清晰了. 本程序还带分 ...

  5. hdu 2063 过山车(匈牙利算法模板)

    http://acm.hdu.edu.cn/showproblem.php?pid=2063 过山车 Time Limit: 1000/1000 MS (Java/Others)    Memory ...

  6. hdu 2063 过山车 二分匹配(匈牙利算法)

    简单题hdu2063 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2063 过山车 Time Limit: 1000/1000 MS (Java/Ot ...

  7. hdu 2063 过山车(模板)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2063 过山车 Time Limit: 1000/1000 MS (Java/Others)    Me ...

  8. HDU 2063 过山车(模板—— 二分图最大匹配问题)

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=2063  解题思路: 二分图最大匹配模板题. AC代码: #include<stdio.h> ...

  9. HDU 2063 过山车(二分图 && 匈牙利 && 最小点覆盖)

    嗯... 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2063 这是一道很经典的匈牙利问题: 把男同学看成左边点,女同学看成右边点,如果两个同学愿意同 ...

随机推荐

  1. C# 注销掉事件,解决多播委托链表的问题

    c#的事件是多播委托.当绑定多个事件时,事件会依次触发,清除掉注册的委托链表:方法1  C# Code  12345678910111213141516171819202122232425262728 ...

  2. 在Linux上配置vsftpd

    一般安装好vsftpd这个服务,它的默认配置文件在这里:/etc/vsftpd/vsftpd.conf 用vim在里面可以添加一些变量控制权限之类的.还有很多chroot相关的东西,里面的变量都有作用 ...

  3. 学习下关于ViewStub实例的用法及带Drawable的TextView的妙用

    在项目中,我们可能有多种数据来源比如: 里面有ListView也有当获得数据为空的时候显示的空信息.根据点击的项目还是差事不同,显示的空消息也不同.a.没有收藏的项目,b目前没有收藏的差事. 其实实现 ...

  4. [Operationg System Labs] 我对 Linux0.00 中 boot.s的理解和注释

    (如有错误请立即指正,么么哒!) !    boot.s!! It then loads the system at 0x10000, using BIOS interrupts. Thereafte ...

  5. Android手机音量的控制

    1.AudioManager audio=(AudioManager) super.getSystemService(Context.AUDIO_SERVICE);//获得手机的声音服务 //设置加音 ...

  6. HBase 事务和并发控制机制原理

    作为一款优秀的非内存数据库,HBase和传统数据库一样提供了事务的概念,只是HBase的事务是行级事务,可以保证行级数据的原子性.一致性.隔离性以及持久性,即通常所说的ACID特性.为了实现事务特性, ...

  7. Java中静态数据的初始化顺序

    Java的类中的数据成员中包含有静态成员(static)时,静态数据成员的初始化顺序是怎样的呢? [程序实例1] import java.util.*; import java.lang.*; imp ...

  8. [转载]SQL Server查找包含某关键字的存储过程3种方法

    存储过程都写在一个指定的表中了,我们只要使用like查询就可以实现查询当前这台SQL Server中所有存储过程中包括了指定关键字的存储过程并显示出来,下面一起来看看我总结了几条命令. 例子1 代码如 ...

  9. Jmeter数据库连接

    1.添加配置元件:测试计划右键-->配置元件-->JDBC Connection Configuration如下图: 注意:上述的Variable Name:在后续的JDBC Reques ...

  10. DB2 错误编码 查询(一)(转)

    size=medium][/size]本节列示 SQLSTATE 及其含义.SQLSTATE 是按类代码进行分组的:对于子代码,请参阅相应的表. 表 2. SQLSTATE 类代码 类代码含义 要获得 ...