Facebook
From Ivory Hornbill, 3 Years ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 119
  1. target = 4
  2. n = (target * 2) - 1
  3. matrix = [[0] * n for _ in range(n)]
  4. x, u, d, l, r = 1, 0, n - 1, 0, n - 1
  5. c = target
  6. while l < r and u < d:
  7.   for j in range(l, r):
  8.     matrix[u][j] = c
  9.   for i in range(u, d):
  10.     matrix[i][r] = c
  11.   for j in range(r, l, -1):
  12.     matrix[d][j] = c
  13.   for i in range(d, u, -1):
  14.     matrix[i][l] = c
  15.   u, d, l, r, c = u + 1, d - 1, l + 1, r - 1, c - 1
  16. if l == r:
  17.   matrix[u][r] = c
  18. print(matrix)