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

重庆公司做网站搜索关键词推荐

重庆公司做网站,搜索关键词推荐,平面设计专业学什么,晋中企业网站建设问题背景 有一个地窖,地窖中有 n m n \times m nm 个房间,它们呈网格状排布。 给你一个大小为 n m n \times m nm 的二维数组 m o v e T i m e moveTime moveTime,其中 m o v e T i m e [ i ] [ j ] moveTime[i][j] moveTime[i][j] 表…

问题背景

有一个地窖,地窖中有 n × m n \times m n×m 个房间,它们呈网格状排布。
给你一个大小为 n × m n \times m n×m 的二维数组 m o v e T i m e moveTime moveTime,其中 m o v e T i m e [ i ] [ j ] moveTime[i][j] moveTime[i][j] 表示在这个时刻 以后 你才可以 开始 往这个房间 移动 。你在时刻 t = 0 t = 0 t=0 时从房间 ( 0 , 0 ) (0, 0) (0,0) 出发,每次可以移动到 相邻 的一个房间。在 相邻 房间之间移动需要的时间为:第一次花费 1 1 1 秒,第二次花费 2 2 2 秒,第三次花费 1 1 1 秒,第四次花费 2 2 2 秒……如此 往复
请你返回到达房间 ( n − 1 , m − 1 ) (n - 1, m - 1) (n1,m1) 所需要的 最少 时间。
如果两个房间有一条公共边(可以是水平的也可以是竖直的),那么我们称这两个房间是 相邻 的。

数据约束

  • 2 ≤ n = m o v e T i m e . l e n g t h ≤ 750 2 \le n = moveTime.length \le 750 2n=moveTime.length750
  • 2 ≤ m = m o v e T i m e [ i ] . l e n g t h ≤ 750 2 \le m = moveTime[i].length \le 750 2m=moveTime[i].length750
  • 0 ≤ m o v e T i m e [ i ] [ j ] ≤ 1 0 9 0 \le moveTime[i][j] \le 10 ^ 9 0moveTime[i][j]109

解题过程

Dijkstra 算法的模板题,需要修改的模板中新距离的计算方式。
另外有必要一提的是,题中要求的时间是出发时间而非到达时间,这是很容易出错的地方。

具体实现

class Solution {private final static int[][] DIRECTIONS = {{-1, 0}, {1, 0}, {0, -1}, {0, 1}};public int minTimeToReach(int[][] moveTime) {int n = moveTime.length;int m = moveTime[0].length;int[][] dis = new int[n][m];for (int[] row : dis) {Arrays.fill(row, Integer.MAX_VALUE);}dis[0][0] = 0;PriorityQueue<int[]> heap = new PriorityQueue<>((o1, o2) -> o1[0] - o2[0]);heap.add(new int[]{0, 0, 0});while (true) {int[] cur = heap.poll();int d = cur[0], i = cur[1], j = cur[2];if (i == n - 1 && j == m - 1) {return d;}if (d > dis[i][j]) {continue;}int time = (i + j) % 2 + 1;for (int[] direction : DIRECTIONS) {int x = i + direction[0], y = j + direction[1];if (0 <= x && x < n && 0 <= y && y < m) {int newDis = Math.max(d, moveTime[x][y]) + time;if (newDis < dis[x][y]) {dis[x][y] = newDis;heap.add(new int[]{newDis, x, y});}}}}}
}
http://www.dtcms.com/wzjs/297881.html

相关文章:

  • 今天开始做魔王免费观看网站百度问问首页
  • 手机网站优化指南360优化大师官方下载
  • 东莞建设网站推广公司地址网站设计服务企业
  • 第三方网站流量统计班级优化大师的优点
  • 淄博网站运营公司注册商标查询官网入口
  • 做试管婴儿的网站海外免费网站推广有哪些
  • 做衣服招临工在什么网站找上海网站建设优化
  • 网上最好的网站模块三只松鼠网络营销策略
  • 正规的网站制作服务商3d建模培训学校哪家好
  • 自动发货网站建设8大营销工具
  • 做众筹网站有哪些官网设计比较好看的网站
  • 浦口区网站建设售后保障东莞seo技术培训
  • 怎么做盗号网站手机廊坊seo排名收费
  • 网页设计素材网站花安卓神级系统优化工具
  • 长治做网站公司运营推广seo招聘
  • 做网站 每月赚 钱网站一般怎么推广
  • 优秀htm网站数据分析师报考官网
  • chat gpt 国内版网站seo文章
  • 演讲网站开发背景湖南企业seo优化首选
  • 荣成建设局网站无锡网站建设
  • 沈阳建设银行网站鞍山做网站的公司
  • 成都网站建设服务公司站长工具综合查询
  • 海西高端网站建设价格2022世界足球排行榜
  • web前端界面设计工具seo优化外链平台
  • 济宁网站建设价格南通百度网站快速优化
  • wordpress怎么读宁波优化seo软件公司
  • 海港区网站快排seo成都seo培训班
  • 安徽建站山东关键词优化联系电话
  • 萧山建设信用网站做一个公司网站需要多少钱
  • 做网站需要哪些技术人才新闻发布会稿件