找到值与行列的关系,即 value=(i+j-2)*(i+j-1)/2+j,i,j是所属行与列。然后判定换行的时机,即j=N-i+1时,所属行已排满,换行
while True: try: m = int(input()) for i in range(1, m + 1): for j in range(1, m - i + 2): if j == m - i + 1: print((i + j - 2) * (i + j - 1) // 2 + j) else: print((i + j - 2) * (i + j - 1) // 2 + j, end=' ') except: break