n = int(input()) a = [[0 for j in range(n)] for i in range(n)] # 先赋值左对角线1~4 for i in range(n): a[i][i] = i + 1 # 赋值左对角线下面的部分,以"列"为大方向从n-2~0,逆方向,"行"为小方向依次赋值j+1~n-1,正方向 for j in range(n - 2, -1, -1): for i in range(j+1, n): a[i][j] = a[i][j + 1] + a[i - 1][j] #赋值做对角线上面的部分,以"列"为大方向从1~n-1,正方向,"行"为小方向依次赋值j-1~0,逆方向 for j in range(1, n): for i in range(j-1, -1,-1): a[i][j] = a[i][j - 1] + a[i+1][j] #打印输出 for i in range(n): for j in range(n): print('%5d' % a[i][j], end='') print() /************************************************************** Problem: 1385 User: admin Language: Python Result: Accepted Time:94 ms Memory:34480 kb ****************************************************************/