E. Generalized Pascal's Triangle(National Contest for Private Universities (NCPU), 2019)

 

題目鏈接

 

INPUT
2
3
4
OUTPUT
1
2 2
1 2 1
1
3 3
3 6 3
1 3 3 1
1
4 4
6 12 6
4 12 12 4
1 4 6 4 1

 題意:輸出第n個圖所對應的矩陣。

思路:找規律。每一個結點都是由上一個圖中三個結點的相加而來。直接打表求解即可。

#include <algorithm>
#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <queue>
#include <stack>
#include <map>
using namespace std;
#define MAX 1e9+7
#define inf 0x3f3f3f
const int maxn=1e4+10;
typedef long long ll;
int s[25][25][25];
int main()
{
    s[0][1][1]=1;
    for(int i=1; i<=20; i++)
    {
        for(int j=1; j<=i+1; j++)
        {
            for(int k=1; k<=j; k++)
            {
                s[i][j][k] = s[i-1][j-1][k-1] + s[i-1][j-1][k] + s[i-1][j][k];
            }
        }
    }

    int n;
    while(scanf("%d",&n)!=EOF)
    {
        for(int i=1; i<=n+1; i++)
        {
            for(int j=1; j<=i; j++)
            {
                if(j != i)
                    printf("%d ",s[n][i][j]);
                else
                    printf("%d",s[n][i][j]);
            }
            printf("\n");
        }
    }

}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章