尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

洛谷P2860 [USACO06JAN] Redundant Paths G 题解 边双连通分量

洛谷P2860 [USACO06JAN] Redundant Paths G 题解 边双连通分量
📅 发布时间:2026/6/20 2:50:15

题目链接:https://www.luogu.com.cn/problem/P2860

解题思路:

双连通分量缩点,设缩点后有 \(cnt\) 个度数为 \(1\) 的点。

则答案为 \(\lceil \frac{cnt}{2} \rceil\)(即 (cnt + 1) / 2)。

示例程序:

#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e4 + 5, maxm = 1e5 + 5;struct Edge {int v, id;
};
vector<Edge> g[maxn];
int n, m, dfn[maxn], low[maxn], ts, dcc, bl[maxn], d[maxn], cnt;
stack<int> stk;void tarjan(int u, int eid) {dfn[u] = low[u] = ++ts;stk.push(u);for (auto &[v, id] : g[u]) {if (id == eid) continue;if (!dfn[v]) tarjan(v, id);low[u] = min(low[u], low[v]);}if (low[u] == dfn[u]) {dcc++;int v;do {v = stk.top();stk.pop();bl[v] = dcc;} while (u != v);}
}int main() {scanf("%d%d", &n, &m);for (int i = 1, u, v; i <= m; i++) {scanf("%d%d", &u, &v);g[u].push_back({v, i});g[v].push_back({u, i});}for (int i = 1; i <= n; i++)if (!dfn[i])tarjan(i, -1);for (int u = 1; u <= n; u++)for (auto &[v, id] : g[u])if (bl[u] < bl[v]) // 避免 (u,v) 和 (v,u) 重复算d[ bl[u] ]++, d[ bl[v] ]++;for (int i = 1; i <= dcc; i++)if (d[i] == 1)cnt++;printf("%d\n", (cnt + 1) / 2);return 0;
}

相关新闻

  • AI真好玩系列-免费解锁 Google Gemini 的几种方式
  • 2025权威聚焦:智能门窗控制器解决方案商综合推荐,引领智慧生活新入口 - 星报
  • 2025 智能电壁炉解决方案商权威推荐:赋能家居暖意与智慧节能 - 星报

最新新闻

  • 【图像加密】混合混沌移位变换和于修正 Henon映射的图像加密算法密码分析【含Matlab源码 15646期】
  • 3分钟掌握宝可梦随机化:让经典游戏焕发新生
  • Beyond Compare 5密钥生成器:3种方法完整指南
  • 2026贵阳2026正规漏水检测维修公司精选口碑榜TOP5权威推荐-精准定位检测漏水点-专业防水补漏堵漏维修、卫生间/厨房/屋顶/天沟/地下室/阳台防水漏水检测维修 - 安佳防水
  • SuperCom:面向工业级串口调试的智能化解决方案
  • 3步实现零代码办公自动化:免费RPA工具taskt终极指南

日新闻

  • 信任的进化:技术实现详解——如何用JavaScript构建博弈论模拟器
  • Terrakube自定义工作流:如何集成OPA、Infracost等工具扩展IaC能力
  • grunt-concurrent快速入门:5分钟学会并行运行Grunt任务

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号