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

tarjan割边

模板题:洛谷P1656

code:

#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
typedef pair<int,int> PII;
const int N=200;
vector<PII> edges[N];
vector<PII> ans;
int n,m,dfn[N],low[N],tot;
void tarjan(int u,int last){dfn[u]=low[u]=++tot;for(auto &[v,id]:edges[u]){if(id==last)continue;if(!dfn[v]){tarjan(v,id);low[u]=min(low[u],low[v]);if(low[v]>dfn[u]){ans.push_back({min(v,u),max(v,u)});}}else{low[u]=min(low[u],dfn[v]);}}
}
int main(){cin.tie(nullptr)->sync_with_stdio(false);cin>>n>>m;for(int i=1;i<=m;i++){int u,v;cin>>u>>v;edges[u].push_back({v,i});edges[v].push_back({u,i});}tarjan(1,0);sort(ans.begin(),ans.end());for(auto &[a,b]:ans){cout<<a<<' '<<b<<endl;}return 0;
}
http://www.hskmm.com/?act=detail&tid=1645

相关文章:

  • Linux lsblk (list hard drive) lsusb(list usb device)
  • 【SPIE出版】第二届信号处理与神经网络应用国际学术会议(SPNNA 2025)
  • OI的深渊
  • 当前流行的前端框架
  • 移远EC800M RTOS笔记
  • Linux 实例:配置 NTP 服务
  • 选择MyEMS:为什么开源是能源数字化未来的最佳路径?
  • 0909模拟赛总结
  • 2025年前端开发,流框架的对比及最佳实践建议
  • 开发过程中常见的设计模式
  • 【OpenCV】9 图像基本变换
  • Java第二周课前思考
  • 2025 Vue UI 组件库选型
  • FHQ-Treap
  • 什么是ARM架构?你需要知道的一切
  • 程序连接金仓数据库查询报错:ERROR:column r.id does not exist。字段不存在
  • 论Intel CPU 进化史:德承工控机全面进化 搭载新一代 Intel Core™ Ultra 7/5/3 处理器 - Johnny
  • STM32F103C8T6标准库移植FreeRTOS教程
  • mysql绿色版,无需安装的快速数据库解决方案
  • MyEMS:功能强大的开源能源管理系统,助力企业实现精细化能效管理
  • mysql唯一索引,原理、创建与应用详解
  • redis查询和添加key的最简单方法
  • 111111
  • The 2025 ICPC Asia East Continent Online Contest (I) 7/13 A/B/C/D/G/I/M
  • [PHP之代码审计篇]CTFshowWeb入门 Web301~Web310
  • SAP取税率
  • mysql 导入sql,从入门到精通
  • Kubernetes Pod
  • selenium+browsermobproxy抓POST请求
  • 算法-Dijkstra算法-02 - jack