参考代码:
# 重点就是判断条件的顺序 n = int(input()) square = [[0] * (2 * n - 1) for _ in range(2 * n - 1)] x, y = 0, n - 1 value = 1 while value <= (2 * n - 1) ** 2: square[x][y] = value value += 1 if x == 0 and y == 2 * n - 2 or x - 1 >= 0 and y + 1 < 2 * n - 1 and square[x - 1][y + 1] > 0: x = x + 1 elif x == 0: x, y = 2 * n - 2, y + 1 elif y == 2 * n - 2: x, y = x - 1, 0 else: x, y = x - 1, y + 1 for row in square: for num in row: print(num, end=" ") print()
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题5.7 (C++代码)浏览:855 |
买不到的数目 (C++代码)浏览:868 |
A+B for Input-Output Practice (III) (C语言代码)浏览:576 |
C语言程序设计教程(第三版)课后习题8.1 (C语言代码)浏览:528 |
WU-输入输出格式练习 (C++代码)浏览:1082 |
printf基础练习2 (C语言代码)浏览:646 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:262 |
1113题解浏览:789 |
核桃的数量 (C语言代码)浏览:671 |
DNA (C语言代码)浏览:394 |