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

最短路 - # P6175 无向图的最小环问题

题目描述

给定一张无向图,求图中一个至少包含 \(3\) 个点的环,环上的节点不重复,并且环上的边的长度之和最小。该问题称为无向图的最小环问题。在本题中,你需要输出最小的环的边权和。若无解,输出 No solution.

输入格式

第一行两个正整数 \(n,m\) 表示点数和边数。

接下来 \(m\) 行,每行三个正整数 \(u,v,d\),表示节点 \(u,v\) 之间有一条长度为 \(d\) 的边。

输出格式

输出边权和最小的环的边权和。若无解,输出 No solution.

输入输出样例 #1

输入 #1

5 7
1 4 1
1 3 300
3 1 10
1 2 16
2 3 100
2 5 15
5 3 20

输出 #1

61

说明/提示

样例解释:一种可行的方案:\(1-3-5-2-1\)

对于 \(20\%\) 的数据,\(n,m \leq 10\)

对于 \(60\%\) 的数据,\(m\leq 100\)

对于 \(100\%\) 的数据,\(1\le n\leq 100\)\(1\le m\leq 5\times 10^3\)\(1 \leq d \leq 10^5\)

无解输出包括句号。

#include <iostream>
#include <cstring>
using namespace std;const int maxn = 104;
const int INF = 0x3f3f3f3f;int n, m;
int e[maxn][maxn];     // 原始图的边权
int dist[maxn][maxn];  // 最短路径距离
int Ans;int main() {cin >> n >> m;memset(e, 0x3f, sizeof(e));memset(dist, 0x3f, sizeof(dist));for (int i = 1; i <= m; i++) {int x, y, z;cin >> x >> y >> z;e[x][y] = e[y][x] = z;dist[x][y] = dist[y][x] = z;}Ans = INF;// Floyd算法求最小环for (int k = 1; k <= n; k++) {// 检查经过k的环:i -> k -> j -> (通过1~k-1的最短路) -> ifor (int i = 1; i < n; i++) {for (int j = i + 1; j <= n; j++) {if (dist[i][j] != INF && e[j][k] != INF && e[k][i] != INF) {// 环长 = i到j的最短路 + i到k的边 + j到k的边Ans = min(Ans, dist[i][j] + e[k][i] + e[j][k]);}}}// 正常的Floyd更新for (int i = 1; i <= n; i++) {for (int j = 1; j <= n; j++) {dist[i][j] = min(dist[i][j], dist[i][k] + dist[k][j]);}}}if (Ans == INF) {cout << "No solution." << endl;} else {cout << Ans << endl;}return 0;
}
http://www.jsqmd.com/news/429348/

相关文章:

  • 毅力号火星车刷新火星自主驾驶纪录
  • 介词
  • AI在数学考试中的表现超越了科学家出题速度
  • MySQL 函数
  • Circle公司Q4业绩强劲股价飙升35%以上
  • Golang 企业级物联网平台 SagooIOT 实战指南
  • Galaxy S26系列发布:AI功能全面升级但价格上涨
  • 组合数学小记
  • LingFrame(灵珑)- JVM 运行时安全治理解决方案
  • 最短路 - # P3371 【模板】单源最短路径(弱化版)
  • 2026年蛋白粉哪个品牌最好最安全:口碑实力排名盘点(选购防坑指南) - 品牌排行榜
  • Android新应用帮助用户检测附近的Meta智能眼镜
  • 微软掌门人萨提亚·纳德拉:泡沫的反面是慕尼黑消防局
  • 最短路 - # P4779 【模板】单源最短路径(标准版)
  • 基于Nginx、Java、NFS实现动静分离的前后端分离架构
  • SimpleMindMap 私有部署后cpolar实现远程协作,实用超丝滑。
  • 联合利华任命前员工担任CIO职位负责核心IT运营
  • 【GitHub项目推荐--WiFi DensePose:基于WiFi CSI的隐私保护人体姿态估计系统】⭐⭐⭐⭐⭐
  • 预训练视觉模型赋能强化学习:基于VPT微调在开放世界任务中的样本效率与性能增益分析
  • 【车间调度】基于matlab模拟退火算法考虑在料品和成品库存受资源约束和截止日期影响的无关并行机调度问题UPMSP【含Matlab源码 15099期】
  • MyBatis-Plus的ActiveRecord 模式
  • 【优化配置】基于matlab遗传算法GA配置配电网络IEEE33和69总线【含Matlab源码 15100期】
  • 2026最火Skills技术向入门:分清与Agent的区别,Skills大爆发!掌握这4点,让你的技术工作效率飙升100倍!
  • LLM 算法岗 | 字节面试高频 leetcode 算法题汇总,附 leetcode 链接
  • 搭建电动汽车直线制动ABS模型:MATLAB/Simulink实践指南
  • Task06:秋招秘籍 B
  • 3月3日直播 | 基于下一代Ascend平台的纯SIMT编程介绍
  • 【UI自动化测试】7_Appium基础API _元素定位
  • 最短路 - [USACO09NOV] Job Hunt S
  • DOA-CNN-LSTM分类预测+SHAP分析+特征依赖图!深度学习可解释分析,Matlab代码实现