fork download
  1. matrix = [[0, 1, 1, 1, 0, 0, 1, 0, 0],
  2. [1, 0, 1, 0, 1, 0, 0, 1, 0],
  3. [1, 1, 0, 0, 0, 1, 0, 0, 1],
  4. [1, 0, 0, 0, 1, 1, 1, 0, 0],
  5. [0, 1, 0, 1, 0, 1, 0, 1, 0],
  6. [0, 0, 1, 1, 1, 0, 0, 0, 1],
  7. [1, 0, 0, 1, 0, 0, 0, 1, 1],
  8. [0, 1, 0, 0, 1, 0, 1, 0, 1],
  9. [0, 0, 1, 0, 0, 1, 1, 1, 0]]
  10.  
  11. vector = [0, 1, 0, 1, 0, 1, 0, 1, 0]
  12.  
  13. N = len(matrix)
  14.  
  15. for i in range(N):
  16. for j in range(i, N):
  17. if matrix[j][i]:
  18. # Move to appropriate place
  19. matrix.insert(i, matrix.pop(j))
  20. vector.insert(i, vector.pop(j))
  21. break
  22.  
  23. for j in range(N):
  24. if i != j and matrix[j][i]:
  25. # Sub from rows
  26. matrix[j] = [x^y for x,y in zip(matrix[i], matrix[j])]
  27. vector[j] ^= vector[i]
  28.  
  29. for k in range(N):
  30. print(matrix[k], vector[k])
  31.  
  32. print()
Success #stdin #stdout 0.02s 9936KB
stdin
Standard input is empty
stdout
[1, 0, 1, 0, 1, 0, 0, 1, 0] 1
[0, 1, 1, 1, 0, 0, 1, 0, 0] 0
[0, 1, 1, 0, 1, 1, 0, 1, 1] 1
[0, 0, 1, 0, 0, 1, 1, 1, 0] 0
[0, 1, 0, 1, 0, 1, 0, 1, 0] 0
[0, 0, 1, 1, 1, 0, 0, 0, 1] 1
[0, 0, 1, 1, 1, 0, 0, 0, 1] 1
[0, 1, 0, 0, 1, 0, 1, 0, 1] 1
[0, 0, 1, 0, 0, 1, 1, 1, 0] 0

[1, 0, 1, 0, 1, 0, 0, 1, 0] 1
[0, 1, 1, 1, 0, 0, 1, 0, 0] 0
[0, 0, 0, 1, 1, 1, 1, 1, 1] 1
[0, 0, 1, 0, 0, 1, 1, 1, 0] 0
[0, 0, 1, 0, 0, 1, 1, 1, 0] 0
[0, 0, 1, 1, 1, 0, 0, 0, 1] 1
[0, 0, 1, 1, 1, 0, 0, 0, 1] 1
[0, 0, 1, 1, 1, 0, 0, 0, 1] 1
[0, 0, 1, 0, 0, 1, 1, 1, 0] 0

[1, 0, 0, 0, 1, 1, 1, 0, 0] 1
[0, 1, 0, 1, 0, 1, 0, 1, 0] 0
[0, 0, 1, 0, 0, 1, 1, 1, 0] 0
[0, 0, 0, 1, 1, 1, 1, 1, 1] 1
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 1, 1, 1, 1, 1, 1] 1
[0, 0, 0, 1, 1, 1, 1, 1, 1] 1
[0, 0, 0, 1, 1, 1, 1, 1, 1] 1
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0

[1, 0, 0, 0, 1, 1, 1, 0, 0] 1
[0, 1, 0, 0, 1, 0, 1, 0, 1] 1
[0, 0, 1, 0, 0, 1, 1, 1, 0] 0
[0, 0, 0, 1, 1, 1, 1, 1, 1] 1
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0

[1, 0, 0, 0, 1, 1, 1, 0, 0] 1
[0, 1, 0, 0, 1, 0, 1, 0, 1] 1
[0, 0, 1, 0, 0, 1, 1, 1, 0] 0
[0, 0, 0, 1, 1, 1, 1, 1, 1] 1
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0

[1, 0, 0, 0, 1, 1, 1, 0, 0] 1
[0, 1, 0, 0, 1, 0, 1, 0, 1] 1
[0, 0, 1, 0, 0, 1, 1, 1, 0] 0
[0, 0, 0, 1, 1, 1, 1, 1, 1] 1
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0

[1, 0, 0, 0, 1, 1, 1, 0, 0] 1
[0, 1, 0, 0, 1, 0, 1, 0, 1] 1
[0, 0, 1, 0, 0, 1, 1, 1, 0] 0
[0, 0, 0, 1, 1, 1, 1, 1, 1] 1
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0

[1, 0, 0, 0, 1, 1, 1, 0, 0] 1
[0, 1, 0, 0, 1, 0, 1, 0, 1] 1
[0, 0, 1, 0, 0, 1, 1, 1, 0] 0
[0, 0, 0, 1, 1, 1, 1, 1, 1] 1
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0

[1, 0, 0, 0, 1, 1, 1, 0, 0] 1
[0, 1, 0, 0, 1, 0, 1, 0, 1] 1
[0, 0, 1, 0, 0, 1, 1, 1, 0] 0
[0, 0, 0, 1, 1, 1, 1, 1, 1] 1
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0
[0, 0, 0, 0, 0, 0, 0, 0, 0] 0