HDU 2084 树塔

//这算是一个历史遗留问题吧;

//一直没有去尝试做动态规划的题目

//说道理,就是像是心里有种恐惧

//因为听说。。。听说动态规划很难

//所以就连这入门的都没敢去AC

//今天开始,深入看看吧。。。

//菜鸟~~~


#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <string>
#include <iomanip>

int ta[105][105];
using namespace std;
int main(int argc, char *argv[])
{
	int c,n;
	scanf("%d",&c);
	while(c--)
	{
		scanf("%d",&n);
		for(int i = 1; i <= n; i++)
			for(int j = 1; j <= i; j++)
				scanf("%d",&ta[i][j]);
		for(int i = n-1; i >= 1; i--)
		{
			for(int j = 1; j <= i; j++)
			{
				ta[i][j] = max(ta[i+1][j]+ta[i][j],ta[i+1][j+1]+ta[i][j]);
			}
		}
		printf("%d\n",ta[1][1]);
	}
	return 0;
}


posted @ 2013-03-30 12:38  简洁是智慧的灵魂  阅读(153)  评论(0编辑  收藏  举报