1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
import numpy as np

def transform(grid):
    n=len(grid)
    new_grid=np.zeros((n+1, n+1), dtype=int)
    new_grid[:-1, :-1]=grid
    for i in range(1, n+1):
        new_grid[n, i]=1
    new_grid=np.rot90(new_grid, 2)
    return new_grid

grid=np.array([[1, 0, 0], [0, 1, 1], [0, 0, 1]])
N=100

for i in range(3, N):
    grid=transform(grid)
#print(N)
for i in range(N):
    for j in range(N):
        print(grid[i, j], end='')
    print()