2 、解题思路
这道题目可以用递归的方法解决。基本思路是:
以 D( r, j) 表示第 r 行第 j 个数字 (r , j 都从 1 开始算 ) ,以
MaxSum(r, j) 代表从第 r 行的第 j 个数字到底边的最佳路径
的数字之和,则本题是要求 MaxSum(1, 1) 。
从某个 D(r, j) 出发,显然下一步只能走 D(r+1, j) 或者 D(r+1, j+
1) 。如果走 D(r+1, j) ,那么得到的 MaxSum(r, j) 就是 MaxSum
(r+1, j) + D(r, j) ;如果走 D(r+1, j+1) ,那么得到的
MaxSum(r, j) 就是 MaxSum(r+1, j+1) + D(r, j) 。所
以,选择往哪里走,就看 MaxSum(r+1, j) 和 MaxSum(r+1, j+
1) 哪个更大了。