动态规划学习之地牢游戏

阅读: 评论:0

动态规划学习之地牢游戏

动态规划学习之地牢游戏

题目:
从左下角到右下角,生命值至少为多少,才可以保证骑士在行走的过程中至少保持生命值为1(只能向下或者向右走)

关键是每一步都要至少生命值为1。
所以并不是简单的怎么走的路径和最大
我只知道题目,不知道具体输入输出的要求,有没有说机试试有没有AC,只是过了样列,如果有人试了,求告诉我一下是不是有什么bug或者对了,谢谢!
思路:
定义dp[i][j][1]与dp[i][j][2]分别代表(i,j)位置的最小初始生命值与目前生命值的状态;
再分别定义k1,p1代表从来上面到(i,j)的应该有的最小初始生命值与目前生命值的状态;
k2,p2代表从左边到(i,j)的应该有的最小初始生命值与目前生命值的状态;
动态方程:最后取dp[i][j][1]=min(k1,k2);dp[i][j][2]=对应的p1或者p2;
具体的已经在注释中有了

//*题目:
//*从左下角到右下角,生命值至少为多少,才可以保证骑士在行走的过程中至少保持生命值为1
//*关键是每一步都要至少生命值为1
#include <iostream>
#include <algorithm>
#include <cstring>
#include <string>
#include <math.h>
using namespace std;
//todo 动态规划之地牢游戏
#define maxn 101
int main()
{int dp[maxn][maxn][3];int map[maxn][maxn];int n;scanf("%d", &n);for (int i = 1; i <= n; i++) //*输入地图{for (int j = 1; j <= n; j++){scanf("%d", &map[i][j]);}}dp[1][1][1] = map[1][1] >= 0 ? 1 

本文发布于:2024-02-01 21:34:08,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170679444839555.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:地牢   动态   游戏
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23