杭电 2084

思路:从下面向上面计算。

重点:

a[i][j] += a[i+1][j] > a[i+1][j+1] ?a[i+1][j]:a[i+1][j+1]

#include <stdio.h>

int a[105][105];
int main(int argc, char* argv[])
{
    int index,n,i,j;
    while (scanf("%d",&index)!= -1 )
    {
        while (index--)
        {
            scanf("%d",&n);
            for (i = 1 ; i <= n ; ++i )
            {
                for (j = 1 ; j <= i ; ++j )
                {
                    scanf("%d",&a[i][j]);
                }
            }
            for (i = n -1 ; i >0 ; --i )
            {
                for (j = 1; j <= i ; ++j )
                {
                    a[i][j] += (a[i+1][j] > a[i+1][j+1] ? a[i+1][j] : a[i+1][j+1]);
                }
            }
            printf("%d\n",a[1][1]);
        }
    
    }
    return 0;
}


伤不起啊  ,入门的菜鸟啊 ········




你可能感兴趣的:(杭电 2084)