题目大意:第一行输入一个整数n,表示有n个节点。在接下来的n行中,每行的输入数据的格式是:

1: (2) 4 6 :表示编号为1的人认识2个人,他们分别是4、6;

求,最多能找到多少个人,他们互不认识

解题思路:二分图的最大独立集。

1)最大独立集 =  节点数 - 最大匹配数/2;

2)令女生数= 男生数 = 总数

3)   1: (2)可以采用scanf("%d: (%d)",&a,&b);来输入

代码如下:

/*
* 1068_1.cpp
*
* Created on: 2013年8月30日
* Author: Administrator
*/
#include <iostream> using namespace std; const int maxn = 1001;
int map[maxn][maxn];
int link[maxn];
bool useif[maxn];
int n; int can(int t){
int i;
for(i = 0 ; i < n ; ++i){
if(useif[i] == 0 && map[t][i]){
useif[i] = 1;
if(link[i] == -1 || can(link[i])){
link[i] = t;
return 1;
}
}
}
return 0;
} int max_match(){
int i;
int num = 0;
memset(link,-1,sizeof(link));
for(i = 0 ; i < n; ++i){
memset(useif,0,sizeof(useif));
if(can(i)){
num++;
}
}
return num;
} int main(){
while(scanf("%d",&n)!=EOF){
int i,j;
memset(map,0,sizeof(map));
for(i = 0 ; i < n ; ++i){
int a,b;
scanf("%d: (%d)",&a,&b);
for(j = 0 ; j < b ; ++j){
int c;
scanf("%d",&c);
map[a][c] = 1;
}
} printf("%d\n",n - max_match()/2);
}
}

(step6.3.2)hdu 1068(Girls and Boys——二分图的最大独立集)的更多相关文章

  1. HDU 1068 Girls and Boys (二分图最大独立集)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1068 有n个同学,格式ni:(m) n1 n2 n3表示同学ni有缘与n1,n2,n3成为情侣,求集合 ...

  2. HDU 1068 Girls and Boys 二分图最大独立集(最大二分匹配)

    Girls and Boys Time Limit: 20000/10000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) ...

  3. [HDU] 1068 Girls and Boys(二分图最大匹配)

    题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=1068 本题求二分图最大独立点集.因为最大独立点集=顶点数-最大匹配数.所以转化为求最大匹配.因为没有给 ...

  4. hdu 1068 Girls and Boys 二分图的最大匹配

    题目链接:pid=1068">http://acm.hdu.edu.cn/showproblem.php? pid=1068 #include <iostream> #in ...

  5. hdu - 1068 Girls and Boys (二分图最大独立集+拆点)

    http://acm.hdu.edu.cn/showproblem.php?pid=1068 因为没有指定性别,所以要拆点,把i拆分i和i’ 那么U=V-M (M是最大匹配,U最大独立集,V是顶点数) ...

  6. HDU 1068 Girls And Boys 二分图题解

    版权声明:本文作者靖心.靖空间地址:http://blog.csdn.net/kenden23/,未经本作者同意不得转载. https://blog.csdn.net/kenden23/article ...

  7. HDU - 1068 Girls and Boys(二分匹配---最大独立集)

    题意:给出每个学生的标号及与其有缘分成为情侣的人的标号,求一个最大集合,集合中任意两个人都没有缘分成为情侣. 分析: 1.若两人有缘分,则可以连一条边,本题是求一个最大集合,集合中任意两点都不相连,即 ...

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

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

  9. hdu 1068 Girls and Boys (二分匹配)

    Girls and Boys Time Limit: 20000/10000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) ...

随机推荐

  1. Android中的Audio播放:控制Audio输出通道切换

    Audio 输出通道有很多,Speaker.headset.bluetooth A2DP等.通话或播放音乐等使用Audio输出过程中,可能发生Audio输出通道的切换.比如,插入有线耳机播放音乐时,声 ...

  2. PHP - 多文件上传

    <html> <head> <meta charset="utf-8"> <title>index_uploads</titl ...

  3. 富文本编辑器 - wangEditor 上传图片

    效果: . 项目结构图: wangEditor-upload-img.html代码: <html> <head> <title>wangEditor-图片上传< ...

  4. c++实现查询天气预报

    原地址:http://blog.csdn.net/x_iya/article/details/8583015 用到的函数.API等 1.中央气象台API返回的JSON数据(http://m.weath ...

  5. 64位CentOS6.2安装erlang及rabbitmqServer

    CentOS 6.2 64bit 安装erlang及RabbitMQ Server 1.操作系统环境(CentOS 6.2 64bit) [root@HAproxy ~]# cat /etc/issu ...

  6. Swift 初见

    http://numbbbbb.gitbooks.io/-the-swift-programming-language-/chapter1/02_a_swift_tour.html 本页内容包括: 简 ...

  7. 教你在mac上配置adb环境变量

    1.打开终端,一次输入如下命令 cd ~ touch .bash_profile open -e .bash_profile 2.这时候会在TextEdit中打开一个空白文档,输入下面的语句 a. 输 ...

  8. JAVA之等号、传类对象参数与c++的区别

    在JAVA中用等号对类对象进行赋值,实际上操作的是对象的地址. eg: package MyText; class ClassA { int value; public void seta(int v ...

  9. 基于visual Studio2013解决C语言竞赛题之1010计算

         题目 解决代码及点评 /************************************************************************/ ...

  10. C#、ASP.NET、WinForm - 实现邮件发送的功能

    转载自:http://www.cnblogs.com/mingmingruyuedlut/archive/2011/10/14/2212255.html 发送邮件所用的核心知识点 微软封装好的Mail ...