2021-06 青少年软件编程(C语言)等级考试试卷(四级)解析

2021-06 青少年软件编程(C语言)等级考试试卷(四级)解析
T1.数字三角形问题
7
3   8
8   1   0
2   7   4   4
4   5   2   6   5
(图1)
图1给出了一个数字三角形。从三角形的顶部到底部有很多条不同的路径。对于每条路径,把路径上面的数加起来可以得到一个和,你的任务就是找到最大的和。 注意:路径上的每一步只能从一个数走到下一层上和它最近的左边的那个数或者右边的那个数。
时间限制:1000
内存限制:65536
输入
输入的是一行是一个整数N (1 < N <= 100),给出三角形的行数。下面的N行给出数字三角形。数字三角形上的数的范围都在0和100之间。
输出
输出最大的和。
样例输入
5
7
3 8
8 1 0 
2 7 4 4
4 5 2 6 5
样例输出
30

//样例代码
#include 
#include 
using namespace std;
const int N=102;
int a[N][N];
int main()
{	
	int h;
	cin>>h;
	for(int i=1;i<=h;i++)
		for(int j=1;j<=i;j++)
			cin>>a[i][j];
	for(int i&

你可能感兴趣的:(算法,矩阵,蓝桥杯,青少年编程,动态规划)