Advertisement
Guest User

Untitled

a guest
Nov 24th, 2014
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.61 KB | None | 0 0
  1. n = int(input())
  2. a = [[0 for j in range(n)] for i in range(n)]
  3. jmin = 0
  4. imin = 1
  5. jmax = n-1
  6. imax = n-1
  7. k = 1
  8. while True:
  9.     for j in range(jmin, jmax+1, 1):
  10.         a[imin-1][j] = k
  11.         k += 1
  12.     for i in range(imin, imax+1, 1):
  13.         a[i][jmax] = k
  14.         k += 1
  15.     jmax -= 1
  16.     for j in range(jmax, jmin-1, -1):
  17.         a[imax][j] = k
  18.         k += 1
  19.     imax -= 1
  20.     for i in range(imax, imin-1, -1):
  21.         a[i][jmin] = k
  22.         k += 1
  23.     imin += 1
  24.     jmin += 1
  25.     if k > n ** 2:
  26.         break
  27. for i in range(n):
  28.     for j in range(n):
  29.         print(a[i][j], end=' ')
  30.     print()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement