参考代码:
n = int(input()) res = [[0] * n for _ in range(n)] num = 1 #将需要构造的矩形分为左上三角形和右下三角形两个部分 #所有待写入位置下标有一个特点: x + y = i - 1 for i in range(1, n + 1): x, y = 0, i - 1 while y >= 0: #判断奇偶控制写入顺序 if i % 2 == 0: res[x][y] = num else: res[y][x] = num num += 1 x += 1 y -= 1 for i in range(n + 1, 2 * n): x = n - 1 y = i - 1 - x while y <= n - 1: if i % 2 == 0: res[y][x] = num else: res[x][y] = num num += 1 x -= 1 y += 1 for row in res: for x in row: print(x, end=" ") print()
0.0分
0 人评分
2^k进制数 (C++代码)使用递归方法浏览:721 |
C语言程序设计教程(第三版)课后习题8.3 (C语言代码)浏览:411 |
printf基础练习2 (C语言代码)浏览:941 |
简单的a+b (C语言代码)浏览:681 |
WU-陶陶摘苹果2 (C++代码)浏览:968 |
用筛法求之N内的素数。 (C语言代码)浏览:646 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:780 |
P1000 (C语言代码)浏览:869 |
C语言程序设计教程(第三版)课后习题5.8 (C语言代码)浏览:1153 |
C语言程序设计教程(第三版)课后习题12.6 (C语言代码)浏览:649 |