P5732 【深基5.习7】杨辉三角

P5732 【深基5.习7】杨辉三角

题目描述

给出n(n≤20),输出杨辉三角的前 n 行。

如果你不知道什么是杨辉三角,可以观察样例找找规律。

输入格式

输出格式

输入输出样例

输入 #1复制

6

输出 #1复制

1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1

题解

python

import math
n=eval(input())
def pascal(n:int,m:int):
    return math.factorial(n)//(math.factorial(m)*math.factorial(n-m))
for i in range(n):
    for j in range(i+1):
        print(pascal(i,j),end=' ')
    print()

c++

记得开longlong,int会炸

#include <iostream>
using namespace std;

long long factorial(int num){
    if(num>0)return num* factorial(num-1);
    else return 1;

}
int pascal(int N,int M){
    return factorial(N)/(factorial(M)* factorial(N-M));
}
int main() {
    int n;
    cin>>n;
    for (int i = 0; i < n; ++i) {
        for (int j = 0; j < i+1; ++j) {
            long long Num =pascal(i,j);
            cout<<Num<<' ';
        }
        cout<<endl;
    }
    return 0;
}
上一篇:netcore编程规范


下一篇:认识PASCAL VOC数据集(目标检测)