python输入一个整数n,输出n行的杨辉三角形。例如,n=5,则杨辉三角如输出样例所示。 输入格式: 输入数据有多组,每组1个整数n(1≤n≤10),一直处理到文件结束。
时间: 2024-05-07 18:18:27 浏览: 237
杨辉三角形的编码实现及结果截图
可以使用动态规划的思想来解决杨辉三角问题。
具体来说,我们可以使用一个二维数组 dp,其中 dp[i][j] 表示杨辉三角中第 i 行第 j 列的数。那么根据杨辉三角的性质,我们有:
dp[i][j] = dp[i-1][j-1] + dp[i-1][j]
其中 i 表示当前行数,j 表示当前列数。
同时,第 i 行有 i 个数,那么我们只需要初始化 dp 数组的第一列和对角线上的元素即可。
具体实现代码如下:
```python
while True:
try:
n = int(input())
# 初始化二维数组
dp = [[0] * n for _ in range(n)]
for i in range(n):
for j in range(i + 1):
if j == 0 or j == i:
dp[i][j] = 1
else:
dp[i][j] = dp[i-1][j-1] + dp[i-1][j]
# 输出杨辉三角
for i in range(n):
for j in range(i + 1):
print(dp[i][j], end=' ')
print()
print()
except:
break
```
输入样例:
```
5
6
```
输出样例:
```
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
```
阅读全文