#include <iostream>
#include <stdio.h>
#include <algorithm>
using namespace std;
int main()
{
int n;
int a[105][105],f[105][105],b[105];
int maxnum;
scanf("%d",&n);
for(int i=0;i<n;i++)
{
for(int j=0;j<=i;j++)
scanf("%d",&a[i][j]);
}
for(int i=0;i<n;i++)
{
for(int j=0;j<=i;j++)
{
f[i][j]=max(f[i-1][j],f[i-1][j-1])+a[i][j];
}
}
for(int i=0;i<n;i++)
b[i]=f[n-1][i];
sort(b,b+n);
maxnum=b[n-1];
printf("%d\n",maxnum);
return 0;
}
poj 1163数字三角形问题--动态规划
最新推荐文章于 2021-05-09 14:49:35 发布