深度优先搜索(2)
例题一:数字三角形(洛谷题)
题目:
有一个数字三角形,编程求从最顶层到最底层的一条路所经过位置上数字之和的最大值。每一步只能向左下或右下方向走。下图数据的路应为7->3->8->7->5,和为30。
输入:
第一行:n(1<=n<=100),数字三角形共有n行;
以下R行:依次表示数字三角形中每行中的数字。
每个数都是非负的,且<=100.
输出:
一个正整数,路径上数字之和的最大值。
输入样例:
5
7
3 8
8 1 0
2 7 4 4
4 5 2 6 5
输出样例:
30
要求掌握(缺一不可):
基本语句;if语句;for语句;二维数组;函数;递归
思路:
(这题最好用记忆化搜索,这个方法当输入20行以上的三角形时会爆)
首先申明变量