ZOJ1137 二分图的最大独立点集 匈牙利算法

来源:互联网 发布:mysql count 不同条件 编辑:程序博客网 时间:2024/04/29 15:10

Girls and Boys


Time Limit: 10 Seconds      MemoryLimit: 32768 KB


the second year of the university somebody started a study on the romanticrelations between the students. The relation ��romantically involved�� is defined between one girl and one boy. For the studyreasons it is necessary to find out the maximum set satisfying the condition:there are no two students in the set who have been ��romantically involved��. The result of the program is the number of students insuch a set.

The input contains several data sets in text format. Each data set representsone set of subjects of the study, with the following description:

the number of students
the description of each student, in the following format
student_identifier:(number_of_romantic_relations) student_identifier1student_identifier2 student_identifier3 ...
or
student_identifier:(0)

The student_identifier is an integer number between 0 and n-1, for n subjects.
For each given data set, the program should write to standard output a linecontaining the result.

An example is given in Figure 1.


Input

7
0: (3) 4 5 6
1: (2) 4 6
2: (0)
3: (0)
4: (2) 0 1
5: (1) 0
6: (2) 0 1
3
0: (2) 1 2
1: (1) 0
2: (1) 0


Output

5
2

 

求二分图的最大独立点集,用匈牙利算法先求出最大匹配数,然后用总数减去最大匹配数就是题目要求的答案.刚开始用了邻接矩阵,严重超时,改成邻接表就过了.

 

代码如下:

 


 

原创粉丝点击