参考代码:
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 人评分
C二级辅导-等差数列 (C++代码)浏览:2219 |
人见人爱A+B (C语言代码)浏览:775 |
逆反的01串 (C++代码)(依旧推荐switch)浏览:936 |
点我有惊喜!你懂得!浏览:1068 |
不会做的浏览:874 |
2003年秋浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:655 |
C语言训练-尼科彻斯定理 (C语言代码)浏览:465 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:449 |
有关字符,字符串的输入输出函数说明浏览:479 |
【计算直线的交点数】 (C语言代码)浏览:918 |