1277 Alex的古董

 
描述
                                         7
                                      3   8
                                    8   1   0
                                  2   7   7   4
                                5   5   2   6   5

1277 Alex的古董_第1张图片

Alex很喜欢收集古董,一次电视台邀请Alex做游戏,做游戏的同时还有古董派送,Alex兴冲冲的去了。

游戏规则是这样的:如上是一个三角形宝塔形地图。Alex只能从宝塔顶层出发,每一步可沿左斜线向下或右斜线向下走,走到每一个位置拿到对应位置数目的古董。Alex只能从最顶层走到最底层。假设三角形行数≤100,输出Alex最多能拿到的古董数量。

输入

第一行一个整数T,表示有T组测试数据。

对于每组测试数据:第一行是三角形的行数N。以后的N行分别是从最顶层到最底层的每一层中的数字。

输出

对于每组测试数据输出一行:Alex能拿到的最多古董数。

样例输入
1
5
7
3 8
8 1 0
2 7 7 4
5 5 2 6 5
样例输出
30

 

 

亦是一道动态规划题

#include <iostream>
using namespace std;

int a[100][100];
int n;

int main()
{
	int t;
	cin>>t;
	while(t--)
	{
		cin>>n;
		for(int i=0;i<n;i++)
		{
			for(int j=0;j<=i;j++)
				cin>>a[i][j];
		}
		for(int i=n-1;i>0;i--)
		{
			for(int j=0;j<n-1;j++)
			{
				if(a[i][j]>a[i][j+1])
						a[i-1][j]=a[i][j]+a[i-1][j];
					else
						a[i-1][j]=a[i][j+1]+a[i-1][j];
			}
		}
	
		
		cout<<a[0][0]<<endl;
		
		
	}
	
	
	
}


 

你可能感兴趣的:(游戏,测试,ini)