当前位置: 首页 > news >正文

制作动态网站的流程百度官方网站入口

制作动态网站的流程,百度官方网站入口,网站的产品图片怎样做清晰,知乎推广优化地下城游戏 leetcode174. 地下城游戏题目描述 动态规划解题思路代码 动态规划专题 leetcode174. 地下城游戏 来源:力扣(LeetCode) 链接:https://leetcode.cn/problems/dungeon-game 题目描述 恶魔们抓住了公主并将她关在了地下城 …

地下城游戏

  • leetcode174. 地下城游戏
    • 题目描述
  • 动态规划
    • 解题思路
    • 代码
  • 动态规划专题

leetcode174. 地下城游戏

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/dungeon-game

题目描述

恶魔们抓住了公主并将她关在了地下城 dungeon 的 右下角 。地下城是由 m x n 个房间组成的二维网格。我们英勇的骑士最初被安置在 左上角 的房间里,他必须穿过地下城并通过对抗恶魔来拯救公主。
骑士的初始健康点数为一个正整数。如果他的健康点数在某一时刻降至 0 或以下,他会立即死亡。
有些房间由恶魔守卫,因此骑士在进入这些房间时会失去健康点数(若房间里的值为负整数,则表示骑士将损失健康点数);其他房间要么是空的(房间里的值为 0),要么包含增加骑士健康点数的魔法球(若房间里的值为正整数,则表示骑士将增加健康点数)。
为了尽快解救公主,骑士决定每次只 向右 或 向下 移动一步。
返回确保骑士能够拯救到公主所需的最低初始健康点数。
注意:任何房间都可能对骑士的健康点数造成威胁,也可能增加骑士的健康点数,包括骑士进入的左上角房间以及公主被监禁的右下角房间。

示例1:
在这里插入图片描述
输入:dungeon = [[-2,-3,3],[-5,-10,1],[10,30,-5]]
输出:7
解释:如果骑士遵循最佳路径:右 -> 右 -> 下 -> 下 ,则骑士的初始健康点数至少为 7 。

示例 2:
输入:dungeon = [[0]]
输出:1

提示:
m == dungeon.length
n == dungeon[i].length
1 <= m, n <= 200
-1000 <= dungeon[i][j] <= 1000

动态规划

解题思路

再找动态规划的转移方程时。
如果从头开始算。那么一路下来到右下角,我们要考虑两个问题:
一.是走到下一个格需要的最小血量
二是全路程走下来我们要走累加和最大的路径’。累加和越大需要的血量越少。
同时考虑两个问题,代码就变得很麻烦了,而且两个问题是两种优化,这两种优化可能会有冲突。
因此我们要换个思路,
从最后一个格往前推,在最后一个格需要多少血量.
如果Math.max(1 - dungeon(i,j),1).如果最后一格是不是负数,有1就好了,
这是最后一格的情况。
和前面联系到一起:那么转移方程就是:
dp[i][j]=max(min(dp[i+1][j],dp[i][j+1])−dungeon(i,j),1)
把 1 - 1 - dungeon(i,j) 换成前面需要最小的血量去减。换成了min(dp[i+1][j],dp[i][j+1])−dungeon(i,j);

代码

  public int calculateMinimumHP(int[][] dungeon) {int n = dungeon.length;int m = dungeon[0].length;int[][]dp = new int[n + 1][m + 1];for (int i = 0; i <= n; ++i) {Arrays.fill(dp[i], Integer.MAX_VALUE);}//走出最下角的格子,最少要有一的血量//把两个方向优化出来dp[n][m - 1] = 1;dp[n - 1][m] = 1;for(int i = n - 1;i >= 0;i--){for(int j = m - 1;j >= 0;j--){//上一次选择路线两个方向上最小值int min = Math.min(dp[i + 1][j],dp[i][j + 1]);//如果是整数 就取1 ,负数就取 min - dungeon[i][j]dp[i][j] = Math.max(min - dungeon[i][j],1);}}return dp[0][0];}

动态规划专题

打败怪兽的概率

leetcode688. 骑士在棋盘上的概率

凑零钱-钱币的组合有多少种II

最小路径和

最长回文子序列

数字转字符串,有多少种转化结果

leetcode.486. 预测赢家

走到指定位置有多少种方式

http://www.zhongyajixie.com/news/59184.html

相关文章:

  • 钓鱼网站免费空间深圳网络推广系统
  • 企业网站模板下载价格多少怎么在百度上做公司网页
  • librestock网站下载成都关键词快速排名
  • 网站安全建设方案需求分析谷歌收录提交入口
  • 济宁建设企业网站站长工具免费
  • 网站推广方法汇总培训学校怎么招生
  • 营销型企业网站系统模板下载大数据技术主要学什么
  • 包装设计公司logo吉林seo刷关键词排名优化
  • 专业团队ppt模板清远网站seo
  • 邹城网站制作广西疫情最新消息
  • 上海服装集团网站建设百度推广后台登录
  • asp.net网站维护新乡seo外包
  • 做中学学中做网站电商网站首页
  • html5网站赏析排名优化哪家好
  • 成都最专业做网站的关键字排名查询工具
  • 东莞营销商城网站建设服装网络营销策划书
  • 企业网站颜色选择76人vs猛龙
  • 欧美只做les 网站市场营销十大经典案例
  • 网站计数器代码js东莞网站建设平台
  • 这么做介绍网站的ppt2023年新闻摘抄十条
  • 网站静态页面网站系统
  • 做网站一个月30ip市场推广计划书
  • 网站建设售后报价yahoo搜索
  • 网站建设 软文长沙百度快速优化
  • 怎么进行网站建设产品推广方式有哪些
  • 做公务员试题比较好的网站怎么在网上做推广
  • hao123网址怎么删除湖南seo优化推荐
  • 重庆免费做网站大连网站推广
  • 长春市星宿科技网站建设公司怎么样广东又出现新病毒
  • 做网站该读啥学校百度竞价搜索