zoukankan      html  css  js  c++  java
  • 算法——帕斯卡三角

    帕斯卡三角(Psacal's Triangle)

    # 帕斯卡三角(Pascal's Triangle)
    def triangle(rows: int):
        tri = []
        for row in range(1, rows+1):
            new_row = []
            for item in range(row):
                new_row.append(1)
            tri.append(new_row)
        for row in range(1, len(tri)-1):
            for index in range(len(tri[row+1])):
                if index == 0 or index == -1:
                    continue
                try:
                    tri[row+1][index] = tri[row][index-1] + tri[row][index]
                except:
                    pass
        return tri
    
    
    if __name__ == '__main__':
        rows = 10
        length = rows * 3
        count = 1
        for row in triangle(rows):
            print(' ' * ((length-count*3)//2), row, sep='')
            count += 1

    # 另一种打印方式(更好的打印方法,如果使用第一种打印方法来打印20行的帕斯卡三角形的话误差会比较大)

    # 帕斯卡三角(Pascal's Triangle)
    def triangle(rows: int):
        tri = []
        for row in range(1, rows+1):
            new_row = []
            for item in range(row):
                new_row.append(1)
            tri.append(new_row)
        for row in range(1, len(tri)-1):
            for index in range(len(tri[row+1])):
                if index == 0 or index == -1:
                    continue
                try:
                    tri[row+1][index] = tri[row][index-1] + tri[row][index]
                except:
                    pass
        return tri
    
    
    if __name__ == '__main__':
        rows = 10
        count = 1
        length = 0
        for i in triangle(rows)[-1]:
            length += len(str(i)) + 2
        for row in triangle(rows): 
            row_length = 0
            for i in row:
                row_length += len(str(i)) + 2
            print(' ' * ((length-row_length)//2), row, sep='')
            count += 1

    # 20行效果图

    Resistance is Futile!
  • 相关阅读:
    【MongoDB】 C#官方驱动增删查改
    【MongoDB】MongoHelper
    【设计模式】简单的单例模式
    andriod深度探索及驱动开发展望
    搭建Android开发环境
    第一章Android系统移植与驱动开发概述
    时间
    django-admin和manage.py
    自定义django-admin命令
    会话session
  • 原文地址:https://www.cnblogs.com/noonjuan/p/10993387.html
Copyright © 2011-2022 走看看