hdu2084数塔

来源:互联网 发布:网上找活软件 编辑:程序博客网 时间:2024/06/18 10:27
题目传送门:http://acm.hdu.edu.cn/showproblem.php?pid=2084AC代码:#include <stdio.h>#include <math.h>int Max(int a,int b){    if(a>b){        return a;    }    return b;}int main(){    int T,n,i,j;    scanf("%d",&T);    while(T--){        scanf("%d",&n);        int arr[n][n];        for(i=0;i<n;i++){            for(j=0;j<=i;j++){                scanf("%d",&arr[i][j]);            }        }        int arrs[n][n]={0};        arrs[0][0]=arr[0][0];        for(j=1;j<n;j++){            arrs[j][0]=arrs[j-1][0]+arr[j][0];            arrs[j][j]=arrs[j-1][j-1]+arr[j][j];        }        for(i=2;i<n;i++){            for(j=1;j<i;j++){                arrs[i][j]=Max(arrs[i-1][j-1],arrs[i-1][j])+arr[i][j];            }        }        int max=arrs[n-1][0];        for(i=0;i<n;i++){            if(arrs[n-1][i]>max){                max=arrs[n-1][i];            }        }        printf("%d\n",max);    }    return 0;} 
原创粉丝点击