ACM排列组合-组合

利用杨辉三角实现求组合数,模板代码(实际为利用二维数组打印杨辉三角):

#include<stdio.h>
int main(){
    int n,i,j,a[35][35];
    while(scanf("%d",&n)!=EOF){
        for(i=0;i<n;i++)
            a[i][0]=a[i][i]=1;
        for(i=2;i<n;i++){
            for(j=1;j<i;j++)
                a[i][j]=a[i-1][j-1]+a[i-1][j];
        }
        for(i=0;i<n;i++){
            for(j=0;j<i;j++)
                printf("%d ",a[i][j]);
            printf("%d\n",a[i][i]);
        }
    }
return 0;
}

猜你喜欢

转载自blog.csdn.net/yimo_180227/article/details/80357603