POJ 2771 最大点独立集】的更多相关文章

这是经典的最大点独立集 还是可以转化成最大匹配数,为什么呢,因为求出最大匹配数之和,匹配的边的两个端点互斥,只能去一个,所以最后结果就用总点数-最大匹配数即可 #include <iostream> #include <cstdio> #include <cstring> #include <algorithm> using namespace std; ],sex[]; ][],ball[][]; ][],vis[],lefts[]; int n; boo…
该题反过来想:将所有可能发生恋爱关系的男女配对,那么可以带出去的人数应该等于这个二分图的最大独立集 先要做一下预处理,把不符合要求的双方先求出来, company[i][j]表示i.j四个标准都不符合,即他们可能会成为伴侣. 这里要注意因为x.y集合都是0~n-1,左右对称,所以求最大点独立集的点的个数时,最后还要/2. 接下来就是求最大独立集的点的个数. 最大点独立集+最小点覆盖=点的个数 独立集:在集合中的任意两点都不相邻,即两点间不存在边 #include <iostream> #inc…
Guardian of Decency Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 6133   Accepted: 2555 Description Frank N. Stein is a very conservative high-school teacher. He wants to take some of his students on an excursion, but he is afraid that…
Graph Coloring Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 5775   Accepted: 2678   Special Judge Description You are to write a program that tries to find an optimal coloring for a given graph. Colors are applied to the nodes of the…
Kindergarten Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 5884   Accepted: 2877 Description In a kindergarten, there are a lot of kids. All girls of the kids know each other and all boys also know each other. In addition to that, some…
题目 Source http://www.lightoj.com/volume_showproblem.php?problem=1171 Description Given an m x n chessboard where some of the cells are broken. Now you are about to place chess knights in the chessboard. You have to find the maximum number of knights…
最大点独立集就是无向图中最多的两两不相邻的点集. 二分图最大点独立集=顶点数-二分图最大边独立集(二分图最大匹配) 这一题男女分别作YX部,如果x和y有浪漫关系则连边,如此构造二分图,答案显然就是最大点独立集.另外要先进行二分图染色,以确定每个id的性别. #include<cstdio> #include<cstring> #include<queue> #include<algorithm> using namespace std; #define IN…
链接:http://acm.hdu.edu.cn/showproblem.php?pid=3829 题意:动物园有n条狗.m头猫.p个小孩,每一个小孩有一个喜欢的动物和讨厌的动物.如今动物园要转移一些动物.假设一个小孩喜欢的动物在,不喜欢的动物不在,他就会happy.问动物最多能使几个小孩happy. 思路:一个比較明显的二分图,不能以猫狗为顶点,那样找到的是哪些动物会转移,以小孩为顶点,找出最大点独立集,有两种建图方式,一种是以小孩总数p为左右点集的顶点个数,假设小孩a喜欢的动物是小孩b不喜欢…
/* http://acm.hust.edu.cn/vjudge/contest/view.action?cid=71805#problem/C */ 性质: [1]二分图最大点独立数=顶点数-二分图的最大匹配 [2]二分图最小点覆盖数=二分图的最大匹配 这个题目就是求最大点独立集,根据性质[1]可以求解. 对于这个问题,我们可以根据性别的不同建立二分图,每两个可能Make Love的人连一条边,o(n*n)的效率可以建图. 然后跑一遍二分图的最大匹配,答案就出来了. #include<cstd…
http://www.lydsy.com/JudgeOnline/problem.php?id=1143 题意: 思路: 二分图最大点独立集,首先用floyd判断一下可达情况. #include<iostream> #include<cstdio> #include<cstring> using namespace std; int n,m,tot; ][],mark[],head[]; ]; struct node { int v,next; }e[]; void a…