信息学奥赛动态规划实例分析及程序实现..docVIP

  • 0
  • 0
  • 约1.48万字
  • 约 15页
  • 2016-12-25 发布于重庆
  • 举报

信息学奥赛动态规划实例分析及程序实现..doc

全国青少年信息学奥林匹克联赛 动态规划实例分析及程序实现 一、数字三角形   (图3.1-1)示出了一个数字三角形。 请编一个程序计算从顶至底的某处的一条路 径,使该路径所经过的数字的总和最大。  ●每一步可沿左斜线向下或右斜线向下走;  ●1<三角形行数≤100;  ●三角形中的数字为整数0,1,…99; 输入数据: 由INPUT.TXT文件中首先读到的是三角形的行数。 在例子中INPUT.TXT表示如下: 5 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 输出数据: 把最大总和(整数)写入OUTPUT.TXT文件。 上例为: 30                 7                3 8               8 1 0              2 7 4 4             4 5 2 6 5                (图3.1-1)              二、算法分析   只要对该题稍加分析,就可以得出一个结论:   如果得到一条由顶至底的某处的一条最佳路径,那么对于该路径上的每一个中间点来说,由顶至该中间点的路径所经过的数字和也为最大。因此该题是一个典型的多阶段决策最优化 的问题。   我们采用动态规划中的顺推解法。按三角形的行划分阶段。若行数为n, 则可把问题看作一个n-1个阶段的决策

文档评论(0)

1亿VIP精品文档

相关文档