Advertisement
tetris555

fill the matrix

Nov 13th, 2021
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.79 KB | None | 0 0
  1. """
  2. fill a square matrix in the following way:
  3.  
  4. 0   20  19  17  14
  5. 1   0   18  16  13
  6. 2   5   0   15  12
  7. 3   6   8   0   11
  8. 4   7   9   10  0
  9. """
  10.  
  11. size = 5
  12. # init matrix
  13. matrix = [[None for _ in range(size)] for _ in range(size)]
  14.  
  15. a = 0
  16. b = size ** 2 - (size - 1)
  17.  
  18. for i in range(size):
  19.     for j in range(size):
  20.         if i == j:
  21.             matrix[i][j] = 0
  22.         elif j > i:
  23.             a += 1
  24.             matrix[i][j] = a
  25.         else:
  26.             b -= 1
  27.             matrix[i][j] = b
  28.  
  29.  
  30. # helper function for printing
  31. def print_matrix(m):
  32.     dim = len(m)
  33.     buffer = []
  34.     for c in range(dim):
  35.         for r in range(dim):
  36.             buffer.append(matrix[r][c])
  37.         print(*["{:3}".format(x) for x in buffer])
  38.         buffer = []
  39.  
  40.  
  41. print_matrix(matrix)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement