def generate(n):
count = 0
mark = -1
res = [[0]*n for i in range(n)]
#res[0][0] = 1
for i in range(0, n):
if mark == 1: #从上往下
x = 0
for y in range(i, -1, -1):
count += 1
res[x][y] = count
x += 1
mark = -mark
else:
y = 0
for x in range(i, -1, -1):
count += 1
res[x][y] = count
y += 1
mark = -mark
for i in range(n-1, 0, -1):
if mark == -1: #从下往上
x = n-1
for y in range(n-i, n):
print(count)
count += 1
res[x][y] = count
x -= 1
mark = -mark
else: #从下往上
y = n-1
for x in range(n-i, n):
print(count)
count += 1
res[x][y] = count
y -= 1
mark = -mark
return res