问题:
python3中的aequivalenz关系
预期结果:
ist_aequivalenzrelation (1 , [(1 , 1 )]) => True
ist_aequivalenzrelation (1 , [(2 , 2 )]) => False
ist_aequivalenzrelation (4 , [(1 , 1), (2 ,2 ), (3 ,3 ), (4 ,4 )]) => True
ist_aequivalenzrelation (3 , [(2 , 2), (1 ,1 ), (3 ,3 ), (4 ,4) , (1 , 2) , (2 , 1), (2 ,3 ), (3 ,2 )]) => False
ist_aequivalenzrelation (2 , [(1 , 1), (2 ,2 ), (1 ,2 ), (2 ,1) , (1 , 1) , (2 , 2 )]
我的解决方案:
答案 0 :(得分:1)
柏林工业大学的CoMa?这是本周的任务,那里。
基本上你应该写这样的东西:
def ist_aequivalenzrelation(n,R):
for i in range(1,n+1):
if (i,i) not in R:
return False
for j in range(1,n+1):
if (i,j) in R and (j,i) not in R:
return False
for k in range(1,n+1):
if (i,j) and (j,k) and not (i,k) in R:
return False
return True
检查反身性,对称性和传递性(上面的这个顺序)。这段代码,将太慢,不被法官接受^^。 祝你好运