#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
int d[1000][1000];
int N;
int max( int a, int b )
{
return a > b ? a: b;
}
int main()
{
scanf( "%d", &N );
memset( d, 0, sizeof(d) );
for( int i = 1; i <= N; i++ )
{
for( int j = 1; j <= i; j++ )
scanf( "%d", &d[i][j] );
}
for( int i = N; i >= 1; i-- )
{
for( int j = 1; j <= i; j++ )
d[i-1][j] += max( d[i][j], d[i][j+1] );
}
printf( "%d\n", d[1][1] );
return 0;
}
NYOJ 18 动态规划入门
最新推荐文章于 2018-05-09 23:16:03 发布