题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1068

解题思路:

这题大概意思就是说找出一个最大的集合使得该集合的任意两个人木有关系。

根据最大独立集 =顶点数 - 最大匹配数

由于题目没有给出哪些是男的哪些是女的,也就是说没有明显的二分图,所以将一个人拆成两个人进行最大匹配。由于一个拆成两个,所以最大匹配数应该是求出来的数除以2 。最后再用顶点数减就行了。

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;const int maxn = 1005;
int n,g[maxn][maxn];
int match[maxn];
bool vis[maxn];bool dfs(int u)
{for(int i = 0; i < n; i++){if(vis[i] == true || g[u][i] == 0) continue;vis[i] = true;if(match[i] == -1 || dfs(match[i])){match[i] = u;return true;}}return false;
}int Max_Match()
{int ans = 0;memset(match,-1,sizeof(match));for(int i = 0; i < n; i++){memset(vis,false,sizeof(vis));if(dfs(i))ans++;}return ans;
}int main()
{int a,b,c;while(scanf("%d",&n)!=EOF){memset(g,0,sizeof(g));for(int i = 1; i <= n; i++){scanf("%d: (%d)",&a,&b);for(int j = 1; j <= b; j++){scanf("%d",&c);g[a][c] = 1;}}printf("%d\n",n - Max_Match()/2);}return 0;
}

hdu 1068(二分图最大独立集)相关推荐

  1. HDU 1068 Girls and Boys(最大独立集合 = 顶点数 - 最大匹配数)

    HDU 1068 :题目链接 题意:一些男孩和女孩,给出一些人物关系,然后问能找到最多有多少个人都互不认识. 转换一下:就是大家都不认识的人,即最大独立集合 #include <iostream ...

  2. 最小割 ---- 二分图最大独立集(集合冲突模型) ---- 骑士共存 方格取数(网络流24题)

    二分图独立集 定理: 二分图最大独立集=n - 二分图最大匹配 其实二分图独立集是特殊的一种最大权闭合子图.我们根据上文"收益"的思想,把选某个点的收益看为1,左部节点为正权点,右 ...

  3. 洛谷 - P3355 骑士共存问题(二分图最大独立集)

    题目链接:点击查看 题目大意:给出一个n*n的棋盘,上面有m个点无法放置棋子,现在要求尽可能多的放 马,使得所有的马两两无法互相攻击,题目要求输出可以放置的最大数量 题目分析:二分图最大独立集的裸题, ...

  4. CH - 6901 骑士放置(二分图最大独立集-二分图最大匹配+奇偶拆点)

    题目链接:点击查看 题目大意:给出一个n*m的棋盘,有t个点是禁止放棋子的,现在按照马走日的规则,问在互不影响的情况下最多能放多少个马 题目分析:这里首先简单介绍一下二分图最大独立集的定义: 通俗来讲 ...

  5. [二分图最大独立集] BZOJ4808:马

    棋盘01染色,然后把互相能打到的点连边,发现是个二分图. 二分图最大独立集 == 点数 −- 最大匹配数 Dinic练手- #include<cstdio> #include<que ...

  6. (step6.3.2)hdu 1068(Girls and Boys——二分图的最大独立集)

    题目大意:第一行输入一个整数n,表示有n个节点.在接下来的n行中,每行的输入数据的格式是: 1: (2) 4 6 :表示编号为1的人认识2个人,他们分别是4.6: 求,最多能找到多少个人,他们互不认识 ...

  7. HDU 3353 二分图的匹配,最大独立集==最小覆盖点

    题意::从中选出最多的数能够使得其两两之间不能整除 既然是找两两之间不能整除的集合里面的个数,那就是用所有的点减去能够匹配到的整除的匹配数就行,这就是最大独立集 都说这题需要去重但是可以不用去,但需要 ...

  8. 最大独立集 HDU 1068

    题目大意:有n个人,两个人之间有相互的关系,问最大的关系数目. 思路:n-(最大匹配数/2).因为这里给出的是n个人之间的两两关系 //看看会不会爆int!数组会不会少了一维! //取物问题一定要小心 ...

  9. 二分图HK算法[数论+二分图最大独立集]:Lightoj1356

    Prime Independence LightOJ - 1356 题目大意:给你n个数,你从这个集合中挑选出若干个数,使得这个集合的数里面两两之间a/b!=k[k是质数并且a>b]a/b!=k ...

最新文章

  1. Win10双系统CentOS7安装完无法启动Win10的解决方法
  2. python mysql 编码方式,Python3编码与mysql编码介绍
  3. OpenJDK install
  4. python慢在哪里_求大神分析一下我的python脚本慢在哪里?
  5. 电脑用户名_仁霸下料优化软件如何找回密码、更换绑定电脑?
  6. 工作121:[““]进行变量赋值
  7. mysql问题处理积累
  8. linux so文件统一目录,linux加载指定目录的so文件
  9. python语句结束符_python中判断文件结束符的具体方法
  10. Linux之apache服务搭建以及浅析web安全
  11. 在Cisco ASA 5510 上配置ssh登录
  12. SQL数据库中主键和外键的应用实例
  13. offsetTop和scrollTop差异
  14. java项目新东方在线源码_[VIP源码]【S019】SSM框架开发智夫子在线考试系统项目源码 百度云盘...
  15. 计算机考研专业课资料百度云,考研专业课资料(一)
  16. [转载][shell]linux常用入门命令
  17. 机器学习:kNN算法(一)—— 原理与代码实现(不调用库)
  18. Revit二次开发环境平台的搭建
  19. Win10连接WiFi显示无internet,安全 却可以正常上网(转)
  20. vue移动端用什么数据可视化插件_AntV F2+vue-cli构建移动端可视化视图

热门文章

  1. 神策数据 × 水滴汽车:着眼车主忠诚度,实现转型期逆势增长!
  2. 案例册下载 | 10+ 行业标杆企业实践集锦,为你开启数据驱动之旅
  3. PPT 下载 | 神策数据算法专家:推荐系统的实践与思考(上)
  4. 神策数据荣获 2017 年度商业影响力大数据领域新锐企业 TOP 10
  5. javascript的eval和with使用小结
  6. GPU编程与CG语言之阳春白雪下里巴人 读书笔记
  7. PHP学习笔记4:字符串与正则
  8. 分享15款为开发人员准备的开发移动应用程序必备的新资源和工具
  9. Linux.Unix.windows的纠结史
  10. Spring.NET学习笔记(4)-对象作用域和类型转换