(地图型dp 算路径和最值)走迷宫2

Posted xusi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(地图型dp 算路径和最值)走迷宫2相关的知识,希望对你有一定的参考价值。

题意:二维矩阵由左上角到右下角只能向右或向下走,求所有可能路径取值之和最大值

 

输入样例:

5 5

0   5   37 53 9

55 10 19 23 8

65 58 82 89 9

8   0  14 50 68

89 5  10 41 0

输出样例:

467

#include <iostream>
using namespace std;

int n,m;
int dp[1000][1000],g[1000][1000];
int main() {
    cin>>n>>m;
    for(int i=1;i<=n;i++){    //输入 矩阵 
        for(int j=1;j<=m;j++){
            cin>>g[i][j];
        }
    }
    for(int i=1;i<=n;i++){
        for(int j=1;j<=m;j++){
            dp[i][j]=max(dp[i-1][j],dp[i][j-1])+g[i][j];//此时的最大值只能是左边一步或者上面一步走到,故此时取两者中最大值加上此时格子的值作为此时的dp值 
        }
    }
    cout<<dp[n][m];
    return 0;
}

 

以上是关于(地图型dp 算路径和最值)走迷宫2的主要内容,如果未能解决你的问题,请参考以下文章

探寻宝藏(双向DP)

Android 可视化走迷宫算法 支持自定义地图

bfs-迷宫

AcWing 844. 走迷宫(BFS or DP)

迷宫bfs+路径记录

P2489 [SDOI2011]迷宫探险 概率dp