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

LeetCode 3243. Shortest Distance After Road Addition Queries I

🔗 https://leetcode.com/problems/shortest-distance-after-road-addition-queries-i

题目

  • 有 n 个城市,编号 0 ~ n-1,从城市 i 到 i+1 有一条路
  • 给若干高速路,表明从城市 u 到 v 有一条新增的路,v - u > 1
  • 返回每新增一条高速路的情况下,城市 0 到城市 n-1 的最短路径条数

思路

  • 初始化二维数组表明城市 i j 的路径条数
  • 朴素思路,每新增一条路径,算一遍 Dijkstra,TLE
  • 优化思路,新增了路径 u → v,那么 u 之前的城市 i(含u)到 v 的路径都可以松弛优化,对应着 i 到 v 之后的城市也都可以优化
  • 其他思路,用邻接表存储边关系,BFS 找到最短路径

代码

class Solution {
public:vector<int> shortestDistanceAfterQueries(int n,vector<vector<int>>& queries) {vector<vector<int>> m(n, vector<int>(n));for (int i = 0; i < n; i++) {for (int j = 0; j < n; j++) {m[i][j] = -1;if (j > i) m[i][j] = j - i;}m[i][i] = 0;}vector<int> ans;for (auto& query : queries) {int u = query[0], v = query[1];m[u][v] = 1;for (int i = 0; i <= u; i++) {m[i][v] = min(m[i][v], m[i][u] + m[u][v]);for (int j = v; j < n; j++) {m[i][j] = min(m[i][j], m[i][v] + m[v][j]);}}ans.push_back(m[0][n - 1]);}return ans;}
};
http://www.lryc.cn/news/492718.html

相关文章:

  • ML 系列:第 31 节— 机器学习中的协方差和相关性
  • 【鸿蒙】鸿蒙开发过程中this指向问题
  • d3-contour 生成等高线图
  • Ubuntu20.04离线安装全教程(包括DellR940重置Raid 5、安装Ubuntu、设置root、安装nvidia英伟达显卡驱动及设置防火墙白名单)
  • Spring Boot 3 集成 Spring Security(2)授权
  • 【开篇】.NET开源 ORM 框架 SqlSugar 系列
  • 参加面试被问到的面试题
  • 第29天:安全开发-JS应用DOM树加密编码库断点调试逆向分析元素属性操作
  • react 的路由功能
  • SurfaceFlinger学习之一:概览
  • Qt关于窗口一直调用paintEvent的踩坑实录
  • C++11: STL之bind
  • 在线音乐播放器 —— 测试报告
  • 等保测评讲解:安全管理中心
  • vue3表单输入相关修饰符使用
  • CSS笔记(二)类名复用
  • TCP三次握手与四次挥手(TCP重传机制,2MSL)超详细!!!计算机网络
  • LCR 006. 两数之和 II - 输入有序数组
  • 网络安全在现代企业中的重要作用
  • 关于 EKS Bottlerocket AMI 版本与 Karpenter 配置的说明
  • Python实现人生重开模拟器
  • java——Spring Boot的配置加载顺序和优先级
  • 【21-30期】Java技术深度剖析:从分库分表到微服务的核心问题解析
  • CSS:怎么把网站都变成灰色
  • 开发一个基于MACOS M1/2芯片的Android 12的模拟器
  • Flink 中 JDBC Connector 使用详解
  • 【Linux打怪升级记 | 报错02】-bash: 警告:setlocale: LC_TIME: 无法改变区域选项 (zh_CN.UTF-8)
  • 未来已来?AI技术革新改变我们的生活
  • 【Linux】进程的生命之旅——诞生、消逝与守候(fork/exit/wait)
  • 使用vcpkg自动链接tinyxml2时莫名链接其他库(例如boost)