和nyoj613(免费馅饼)一样的原理 从下 网上依次遍历 存贮最大值
#include <stdio.h>
#include <algorithm>
using namespace std;
int main()
{
	int n,num[105][105]={0};
	scanf("%d",&n);
	for(int i=1;i<=n;i++)
	for(int j=1;j<=i;j++)
	scanf("%d",&num[i][j]);
	for(int i=n-1;i>=0;i--)
	for(int j=1;j<=i;j++)
	num[i][j]=num[i][j]+max(num[i+1][j],num[i+1][j+1]);
	printf("%d\n",num[1][1]);
	return 0;
}原文地址:http://blog.csdn.net/su20145104009/article/details/45273457