• 51Nod 1002 数字三角形 Label:水水水 && 非学习区警告


    一个高度为N的由正整数组成的三角形,从上走到下,求经过的数字和的最大值。
    每次只能走到下一层相邻的数上,例如从第3层的6向下走,只能走到第4层的2或9上。
     
       5
      8 4
     3 6 9
    7 2 9 5
     
    例子中的最优方案是:5 + 8 + 6 + 9 = 28
     
    Input
    第1行:N,N为数塔的高度。(2 <= N <= 500)
    第2 - N + 1行:每行包括1层数塔的数字,第2行1个数,第3行2个数......第k+1行k个数。数与数之间用空格分隔(0 <= A[i] <= 10^5) 。
    Output
    输出最大值
    Input示例
    4
    5
    8 4
    3 6 9
    7 2 9 5
    Output示例
    28

    代码

     1 #include<iostream>
     2 #include<algorithm>
     3 #include<cstring>
     4 #include<cstdio>
     5 #define ll long long 
     6 using namespace std;
     7 ll ans,N,a[1005][1005];
     8 int main(){
     9 //    freopen("01.in","r",stdin);
    10     
    11     scanf("%d",&N);
    12     for(ll i=1;i<=N;i++){
    13         for(ll j=1;j<=i;j++){
    14             scanf("%lld",&a[i][j]);
    15         }
    16     }
    17     
    18     for(ll i=N;i>=1;i--){
    19         for(ll j=1;j<=i;j++){
    20             a[i][j]+=max(a[i+1][j],a[i+1][j+1]);
    21         }
    22     }
    23     
    24     
    25     printf("%lld
    ",a[1][1]);
    26     return 0;
    27 }
    版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!
  • 相关阅读:
    四则运算(判断正误)
    Right-BICEP要求四则2的测试用例
    《构建之法》阅读笔记02
    第二周的学习进度
    四则运算(升级)
    构建之法阅读笔记01
    新手安装使用codeblocks
    新的一年你该如何起飞
    中国国家图书馆 注册后可以免费使用 维普等多个数据库资源
    c++学籍管理系统v1.10
  • 原文地址:https://www.cnblogs.com/radiumlrb/p/6034252.html
Copyright © 2020-2023  润新知