def prettyPrint(A): n = 2*A-1 Arr = [[0]*n for i in range(n)] print Arr t=l=0 b=r=n-1 d=0 while t<=b and l<=r and A>=1: for i in range(l,r+1): Arr[t][i] = A t+=1 for i in range(t,b+1): Arr[i][r] = A r-=1 for i in range(r,l-1,-1): Arr[b][i] = A b-=1 for i in range(b,t-1,-1): Arr[i][l] = A l+=1 A-=1 return Arr A = 3 B = prettyPrint(A) print B print(B[1][2])
Standard input is empty
[[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]] [[3, 3, 3, 3, 3], [3, 2, 2, 2, 3], [3, 2, 1, 2, 3], [3, 2, 2, 2, 3], [3, 3, 3, 3, 3]] 2