首页 > 代码库 > 九度OJ 1073 杨辉三角形

九度OJ 1073 杨辉三角形

题目1073:杨辉三角形

时间限制:1 秒

内存限制:32 兆

特殊判题:

提交:3239

解决:1399

题目描述:

输入n值,使用递归函数,求杨辉三角形中各个位置上的值。

输入:

一个大于等于2的整型数n

输出:

题目可能有多组不同的测试数据,对于每组输入数据,
按题目的要求输出相应输入n的杨辉三角形。

样例输入:
6
样例输出:
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
#include<stdio.h>
int a[1000][1000];
int yang(int x,int y)
{
    if(a[x][y]==0)
    {
        if(x==y||y==1)a[x][y]=1;
        else
            a[x][y]=yang(x-1,y)+yang(x-1,y-1);
    }
    return a[x][y];
}
int main(int argc, char *argv[])
{
    int n;
    while(~scanf("%d",&n))
    {
        if(n<2)
            continue;
        for(int i=2;i<=n;++i)
        {
            for(int j=1;j<=i-1;++j)
            {
                printf("%d ",yang(i,j));
            }
            printf("%d\n",yang(i,i));
        }
    }
    return 0;
}
 
/**************************************************************
    Problem: 1073
    User: kirchhoff
    Language: C
    Result: Accepted
    Time:10 ms
    Memory:4820 kb
****************************************************************/


九度OJ 1073 杨辉三角形