zoukankan      html  css  js  c++  java
  • hdu 2084 数塔

    动态规划经典题目

    充分体现了动态规划的核心思想——自顶先下分析,自底向上计算

    借用课件里面的话:1、从顶点出发时到底向左走还是向右走应取决于是从左走能取到最大值还是从右走能取到最大值,只要左右两道路径上的最大值求出来了才能作出决策。

    2、同样,下一层的走向又要取决于再下一层上的最大值是否已经求出才能决策。这样一层一层推下去,直到倒数第二层时就非常明了。

      题目传送门

     1 #include<stdio.h>
     2 int a[101][101];
     3 int max(int a, int b)
     4 {
     5     return a>b?a:b;
     6 }
     7 int main()
     8 {
     9     int t,i,j,n;
    10     scanf("%d",&t);
    11     while(t--)
    12     {
    13         scanf("%d",&n);
    14         for(i=0;i<n;i++)
    15             for(j=0;j<=i;j++)
    16                 scanf("%d",&a[i][j]);
    17         for(i=n-2;i>=0;i--)
    18             for(j=0;j<=i;j++)
    19                 a[i][j] += max(a[i+1][j],a[i+1][j+1]);
    20         printf("%d\n",a[0][0]);
    21     }
    22     return 0;
    23 }
  • 相关阅读:
    js原型杂谈
    arguments.callee.caller
    $resource
    sql的四种匹配模式
    AMD规范
    module.ngdoc
    angularjs杂谈
    浏览器前缀
    css21规范学习
    <meta>标签
  • 原文地址:https://www.cnblogs.com/quantumplan/p/3071206.html
Copyright © 2011-2022 走看看