AT_arc083_b [ABC074D] Restoring Road Network 题解
难度虚高,建议评橙 / 黄 qwq。
首先我们发现这是一道最短路问题,且 \(N \le 300\),于是采取 floyd 算法解决。
具体地,我们分情况分类讨论。令我们当前枚举到的最短路径起点为 \(i\),终点为 \(j\),中转点为 \(k\),输入的矩阵为 \(dis\)。
-
若 \(dis_{i,j}>dis_{i,k}+dis_{k,j}\),则一定无解;
-
若 \(dis_{i,j}=dis_{i,k}+dis_{k,j}\),则说明 \(i,j\) 最短路无需更新,对答案没有贡献,进行标记;
最后遍历整个 \(dis\) 数组,若某条 \(i,j\) 最短路未被标记,则令答案累加 \(dis_{i,j}\) 即可。
时间复杂度 \(O(n^3)\)。
标签:
题解
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】