• HDU


    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2084

    #include <iostream>
    #include <string.h>
    using namespace std;
    /****************************************************************************************************************
                    思路:没什么说的了,最简单的dp,刚接触的时候和别难理解,现在好多了
                    重点在于:
                    1,优化子问题
                    2,状态转移方程
                    3,状态更新
                    理解了这几步相信简单的dp不在话下了,难一点的,咳!要会列方程
    ****************************************************************************************************************/
    int dp[105][105];
    int main()
    {
        int T,N,a[105][105];
        cin>>T;
        while(T--)
        {
            memset(dp,0,sizeof(dp));
            memset(a,0,sizeof(a));
            cin>>N;
            for(int i = 1;i <= N;i ++)
                for(int j = 1;j <= i;j ++)
                    cin>>a[i][j];
    
            for(int i = N;i > 0;i --)
                for(int j = 1;j <= i;j ++)
                    dp[i][j]=a[i][j]+max(dp[i+1][j],dp[i+1][j+1]);
            cout<<dp[1][1]<<endl;
        }
        return 0;
    }
    



  • 相关阅读:
    学习笔记4
    学习笔记3
    学习笔记2
    学习笔记1
    MySQL 随笔总结
    java1-4
    java1-3
    java1-2
    java 1-1
    Mysql 基础
  • 原文地址:https://www.cnblogs.com/Jstyle-continue/p/6352010.html
Copyright © 2020-2023  润新知