描述
你的代码需要从标准输入流(控制台)中读入一个正整数 n
,然后计算前 n
行的杨辉三角并将结果后并打印到标准输出流(控制台)中。
样例
评测机会通过执行命令 python main.py
来执行你的代码。你的代码需要从标准输入流(控制台)中读入数据 n
,并将前 n
行的杨辉三角打印到标准输出流(控制台)中。输出格式见样例。
样例一
当 n = 3
时,程序执行打印出的结果为:
1
1 1
1 2 1
杨辉三角
1每行第一位数和最后一位数都为1;
2其余的数为正上方和左边数之和;
代码
# write your code here
# read data from console 从控制台读取数据
n = int(input())
# 杨辉三角:每行第一位数和最后一位数都为1;其余的数为正上方和左边数之和;
l = [1]
for i in range(n):
print(*l) # 将列表l的元素以空格分隔输出
l1 = [0] + l
l2 = l + [0]
l = [x + y for x, y in (zip(l1, l2))]
'''
这段代码的意思是,首先输入一个数n。
接下来,定义一个列表l并将1添加到其中。
然后,进行一个循环迭代n次。在每次迭代中,将列表l的元素以空格分隔输出。
然后,定义两个新的列表l1和l2,l1将0添加到列表l的前面,l2将0添加到列表l的后面。
最后,通过使用zip函数将l1和l2中的元素一一配对,并将对应的元素相加,生成一个新的列表,并将其赋值给l。
以此完成每次迭代后的列表更新,并再次执行下一次迭代。
'''
代码测试成功截图
原题网址