哈斯图
#描述#
哈斯图是离散数学中的一个重要概念,对于一个偏序关系,我们知道他与其哈斯图是一一对应的。<BR>
偏序关系的定义是:<BR>
设A是一个非空集,P 是 A 上的一个关系,若 P 满足下列条件:<BR>
1、对任意的 a∈A,(a,a)∈P(自反性 reflexlve);<BR>
2、若(a,b)∈P,且(b,a)∈P,则 a=b(反对称性 anti-symmentric);<BR>
3、若(a,b)∈P,(b,c)∈P,则(a,c)∈P(传递性 transitive)。<BR>
则称P是A上的一个偏序关系。<BR>
而哈斯图去掉了原偏序关系中的冗余边:<BR>
1、不包含形如(a,a)的边;<BR>
2、若存在(a,b)∈P,(b,c)∈P,则不包含边(a,c);<BR>
3、包含其余在原偏序关系中的边。<BR>
现在,给出一个关系,它的自反传递闭包是偏序关系,求出其哈斯图中存在的边。
#格式#
##输入格式##
多组数据,读入到文件结束。每组数据第一行是两个整数 n, m (n <= 300, m <= n * (n + 1) / 2) 。随后 m 行,第 i 行两个整数 a, b (0 <= a,b < n) ,表示第 i 条边(a,b) 。
##输出格式##
每组数据一行,以”Case #:” 开头,其中#代表测试数据编号,随后是哈斯图中存在的边的编号,按从小到大排序,编号间以空格分隔。具体格式参考样例输出。
#样例1#
##样例输入1##
3 3
0 1
1 2
0 2
4 4
1 2
2 3
0 3
0 2
##样例输出1##
Case 1: 1 2
Case 2: 1 2 4
#限制#
2000ms
32768KB
#提示#
#来源#
ycc