Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- n=5
- w, h = n, n;
- #unpack
- #args = [1,n*n+1]
- #print range(*args)
- #exit(0)
- mtrx2 = [[0 for x in range(w)] for y in range(h)]
- def listprn(lis):
- for indx in range(0,n):
- print lis[indx]
- k=1
- xs,ys = 0,0 # x start, y start
- done = False
- while not done:
- xx,yy=0,0
- for m in range(xs,n-xs): #fill --->
- mtrx2[ys+yy][xs+xx]=k
- if k < n*n:
- k+=1
- else:
- done = True
- break
- xx+=1
- if done: break
- yy+=1
- xx-=1
- for m in range(xs,n-1-xs): #fill right |
- mtrx2[ys+yy][xs+xx]=k
- if k < n*n:
- k+=1
- else:
- done = True
- break
- yy+=1
- if done: break
- yy-=1
- xx-=1
- for m in range(xs,n-1-xs): #fill <---
- mtrx2[ys+yy][xs+xx]=k
- if k < n*n:
- k+=1
- else:
- done = True
- break
- xx-=1
- if done: break
- xx+=1
- yy-=1
- for m in range(xs,n-2-xs): #fill | left
- mtrx2[ys+yy][xs+xx]=k
- if k < n*n:
- k+=1
- else:
- done = True
- break
- yy-=1
- if done: break
- xs+=1 # shift start x,y
- ys+=1
- listprn(mtrx2)
- exit(0)
Add Comment
Please, Sign In to add comment