zoukankan      html  css  js  c++  java
  • 算法训练 数字三角形(DP)

    问题描述
      (图3.1-1)示出了一个数字三角形。 请编一个程序计算从顶至底的某处的一条路
      径,使该路径所经过的数字的总和最大。
      ●每一步可沿左斜线向下或右斜线向下走;
      ●1<三角形行数≤100;
      ●三角形中的数字为整数0,1,…99;


      .
      (图3.1-1)
    输入格式
      文件中首先读到的是三角形的行数。

      接下来描述整个三角形
    输出格式
      最大总和(整数)
    样例输入
    5
    7
    3 8
    8 1 0
    2 7 4 4
    4 5 2 6 5
    样例输出
    30

     从下往上进行计算就好了,还可以用DP的方法来解

    #include<stdio.h>
    #include<algorithm>
    
    using namespace std;
    
    int main()
    {
        int a[105][105];
        int b[105];
        int n;
        while(~scanf("%d", &n))
        {
            for(int i = 1; i <= n; i++)
            {
                for(int j = 1; j <= i; j++)
                {
                    scanf("%d", &a[i][j]);
                }
            }
    
            for(int i = 1; i <= n; i++)
                b[i] = a[n][i];
    
            for(int i = n-1; i >= 1; i--)
            {
                for(int j = 1; j <= i; j++)
                {
                    b[j] = max(b[j] + a[i][j], b[j+1] + a[i][j]);
                }
            }
            printf("%d
    ", b[1]);
        }
    
        return 0;
    }
    View Code

     DP解法

    #include<bits/stdc++.h>
    using namespace std;
    int dp[1010][1010];
    int main()
    {
        int t,maxx=0;
        scanf("%d",&t);
        for(int i=1; i<=t; i++)
        {
            for(int j=1; j<=i; j++)
            {
                scanf("%d",&dp[i][j]);
                dp[i][j]+=max(dp[i-1][j],dp[i-1][j-1]);
                maxx=max(maxx,dp[i][j]);
            }
        }
        printf("%d
    ",maxx);
    }
    View Code
    永远渴望,大智若愚(stay hungry, stay foolish)
  • 相关阅读:
    Ibatis 使用心得
    java.net.ConnectException: Connection timed out
    ZK 最少限度加载页面js文件
    JAVA 获取网页流
    ZK 页面间参数传递
    删除 TOMCAT 上次关闭遗留下来的 SESSION 缓存
    Java 异常java.lang.IllegalArgumentException: Illegal group reference
    ZK textbox Constraint验证
    zk textbox 更改字体大小及高度
    通过http管理solrcore
  • 原文地址:https://www.cnblogs.com/h-hkai/p/8428537.html
Copyright © 2011-2022 走看看