美文网首页
蓝桥杯:杨辉三角形--Python解法

蓝桥杯:杨辉三角形--Python解法

作者: 冒泡泡de可乐 | 来源:发表于2019-12-02 22:41 被阅读0次

    问题描述

    杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数。

    它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加。

    下面给出了杨辉三角形的前4行:

    1

    1 1

    1 2 1

    1 3 3 1

    给出n,输出它的前n行。

    输入格式

    输入包含一个数n。

    输出格式

    输出杨辉三角形的前n行。每一行从这一行的第一个数开始依次输出,中间使用一个空格分隔。请不要在前面输出多余的空格。

    样例输入

    4

    样例输出

    1
    1 1
    1 2 1
    1 3 3 1

    数据规模与约定

    1 <= n <= 34。

    代码

    def yh_triangle_line(n):
        line = [1]
        for i in range(n):
            yield line
            line = [1] + [line[i-1] + line[i] for i in range(1, len(line))] + [1]
    
    def print_line(line):
        print(" ".join(str(i) for i in line))
    
    def run():
        n = int(input())
        for line in yh_triangle_line(n):
            print_line(line)
    run()
    
    

    相关文章

      网友评论

          本文标题:蓝桥杯:杨辉三角形--Python解法

          本文链接:https://www.haomeiwen.com/subject/tgrqgctx.html