1. 程式人生 > >數字三角形問題 oj

數字三角形問題 oj

 
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#define N 105
int D[N][N];
int a[N][N];
int n;
int main()
{
    int i,j;
    scanf("%d",&n);
    for(i = 1;i <= n;i++)
    {
        for(j = 1;j <= i;j++)
        scanf("%d",&D[i][j]);
    }
    for(j = 1;j <= n;j++)
        a[n][j] = D[n][j];
    for(i = n;i > 1;i--)
    {
        for(j = 1;j <= i;j++)
        {
            if(a[i][j] > a[i][j+1])
                a[i-1][j] = a[i][j] + D[i-1][j];
            else
                a[i-1][j] = a[i][j+1] + D[i-1][j];
        }
    }
    printf("%d\n",a[1][1]);
    return 0;
}