Advertisement
MrHitch

Untitled

Apr 8th, 2020
183
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.31 KB | None | 0 0
  1. mtx = None
  2. mtx_len = None
  3.  
  4.  
  5. def read_input():
  6.     with open('input.txt', 'r') as fin:
  7.         mtx = [[int(num) for num in line.split(' ')] for line in fin]
  8.  
  9.     mtx_len = len(mtx)
  10.  
  11.  
  12. def associativity():
  13.     for i in range(mtx_len):
  14.         for j in range(mtx_len):
  15.             for k in range(mtx_len):
  16.                 if mtx[mtx[i][j]][k] != mtx[i][mtx[j][k]]:
  17.                     return False
  18.     return True
  19.  
  20.  
  21. def neutral_element():
  22.     for i in range(mtx_len):
  23.         if mtx[i] == [i for i in range(mtx_len)]:
  24.             return i
  25.     return None
  26.  
  27.  
  28. def inverse_element():
  29.     e = neutral_element()
  30.     if e == None:
  31.         return False
  32.     cnt = 0
  33.     for i in range(mtx_len):
  34.         for j in range(mtx_len):
  35.             if (mtx[i][j] == e) and (mtx[j][i] == e):
  36.                 cnt += 1
  37.                 break
  38.     if cnt == mtx_len:
  39.         return True
  40.     else:
  41.         return False
  42.  
  43.  
  44. def commutativity():
  45.     for i in range(mtx_len):
  46.         for j in range(mtx_len):
  47.             if mtx[i][j] != mtx[j][i]:
  48.                 return False
  49.     return True
  50.  
  51.  
  52. def closure():
  53.     for i in range(mtx_len):
  54.         for j in range(mtx_len):
  55.             if mtx[i][j] not in range(mtx_len):
  56.                 return False
  57.     return True
  58.  
  59.  
  60. if __name__ == '__main__':
  61.     read_input()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement