核心思路从后往前排, 通过n算出最后一个数是为number, number排在第一行,(number-1)排在第二行, 排n行, 之后(number-n)又排到了第一行,之后排n-1行
while True:
try:
n=int(input())
number=0
for i in range(n+1):
number+=i
L=[]
for i1 in range(n):
L.append([])
while number>0:
for i2 in range(n):
L[i2].append(str(number-i2))
number-=n
n-=1
for item in L:
print(" ".join(item[::-1]))
except:
break