神马网站的链接都可以啊~~~~

模板题,无程序说明

Code:

#include<bits/stdc++.h>
#define rep(i,j,k) for(int i=j;i<=k;i++)
using namespace std;
template<typename T> void read(T &num){char c=getchar();num=0;T f=1;while(c<'0'||c>'9'){if(c=='-')f=-1;c=getchar();}while(c>='0'&&c<='9'){num=(num<<3)+(num<<1)+(c^48);c=getchar();}num*=f;
}
template<typename T> void qwq(T x){if(x>9)qwq(x/10);putchar(x%10+'0');
}
template<typename T> void write(T x){if(x<0){x=-x;putchar('-');}qwq(x);
}
int ans[20010];struct wzy{int nxt,vertice;
}edge[200010];
int head[20010];int len=0;
inline void add_edge(int x,int y){edge[++len].nxt=head[x];edge[len].vertice=y;head[x]=len;return;
}int low[20010];int dfn[20010];bool iscut[20010];int siz=0;
inline void tarjan(int son,int father){low[son]=dfn[son]=++siz;int coun=0;for(register int i=head[son];i;i=edge[i].nxt){int nop=edge[i].vertice;if(!dfn[nop]){tarjan(nop,father);low[son]=min(low[son],low[nop]);iscut[son]|=(low[nop]>=dfn[son]&&son!=father);coun+=(son==father);}low[son]=min(low[son],dfn[nop]);}iscut[son]|=(son==father&&coun>=2);return;
}int main(){int n,m;read(n);read(m);rep(i,1,m){int x,y;read(x);read(y);add_edge(x,y);add_edge(y,x);}rep(i,1,n){if(!dfn[i])tarjan(i,i);}int ans_len=0;rep(i,1,n){if(iscut[i])ans[++ans_len]=i;}write(ans_len);putchar('\n');rep(i,1,ans_len){write(ans[i]);putchar((i==ans_len)?'\n':' ');}return 0;
}

【模板】 割点(割顶)相关推荐

  1. 洛谷 P3388 【模板】割点(割顶) 根+非根+dfn[]+low[]+不一样的Tarjan算法

    洛谷  P3388 [模板]割点(割顶)  根+非根+dfn[]+low[]+不一样的Tarjan算法 Tarjan算法,详见https://blog.csdn.net/mrcrack/article ...

  2. P3388 【模板】割点(割顶) 题解

    博客园同步 原题链接 简要题意: 给定一个图,求所有割点. 割点(割顶)的定义:去掉该点整个图不连通. 前置知识: 强连通分量的 Tarjan \texttt{Tarjan} Tarjan 求法. 不 ...

  3. UVA 315 :Network (无向图求割顶)

    题目链接 题意:求所给无向图中一共有多少个割顶 用的lrj训练指南P314的模板 #include<bits/stdc++.h> using namespace std; typedef ...

  4. 无向图的割顶、桥、BCC和eBCC相关

    几个例题代码待填 割顶:若去掉一个点和与这个点相连的边后,图不再连通,则这个点是割顶. ​ 求法:若节点\(u\)存在一棵子树\(v\)满足\(v\)中所有节点的回边都指向\(u\)及以下的节点(即\ ...

  5. 【BZOJ1123】[POI2008]BLO【割顶】

    [题目链接] 题意可见discuss. 用Tarjan求割顶,然后对割顶的所有子树求点对个数(前缀和扫一遍),最后把自身和其他点的答案加上. 没注意边,数组开小了. /* Pigonometry */ ...

  6. 洛谷P3388 【模板】割点(割顶)

    /*表示割点模板很难理解.... 但是呢,可以将整个图用深搜来一步步递归.. dfn[x]<=low[tmp] && x!=mr的点就++: 完毕.... PS:小心第一个节点. ...

  7. 【模板】割点(割顶)

    题目背景 割点 题目描述 给出一个n个点,m条边的无向图,求图的割点. 输入输出格式 输入格式: 第一行输入n,m 下面m行每行输入x,y表示x到y有一条边 输出格式: 第一行输出割点个数 第二行按照 ...

  8. P3388-[模板]割点(割顶)【tarjan】

    正题 题目大意 求所有割点 解题思路 跑tarjantarjantarjan,然后判断dfnx≤lowydfn_x\leq low_ydfnx​≤lowy​ codecodecode #include ...

  9. 洛谷.4897.[模板]最小割树(Dinic)

    题目链接 最小割树模板.具体见:https://www.cnblogs.com/SovietPower/p/9734013.html. ISAP不知为啥T成0分了.. Dinic: //1566ms ...

最新文章

  1. JS浏览器加载一个页面的过程
  2. nc个人实战使用总结
  3. [ubuntu]deb软件源
  4. iOS10 Xcode 8 中provisioning file 相关bug
  5. 【Java】JavaSocket编程开发聊天室-总览与部分客户端界面
  6. HP 816 817墨盒计数器清零方法
  7. java 使用POI导入复杂excel表格
  8. 新手用计算机制作工作表,新手怎么制作Excel表格?Excel表格制作教程介绍
  9. 计算机网络共享文件共享,终于发现如何取消计算机网络共享文件
  10. 华为刷原生android,教你如何体验(刷)原生安卓8.0
  11. 网游之古剑太初最新章节
  12. C语言基础之5:运算符、表达式和语句
  13. BDE Installer for RAD Studio
  14. 微信聊天记录怎么备份?
  15. set和fronzenset的区别和方法
  16. Python turtle库的应用实例——画大白(情人节表白神器)
  17. 图灵停机问题(The Halting Problem)
  18. 你与绝美文章只差一个Typora(Mac版)
  19. 经典:linux shell 正则表达式(BREs,EREs,PREs)差异比较
  20. python2B 之 DataFrame 选取多列并进行赋值

热门文章

  1. 一级建造师从业者面试需要注意什么问题?
  2. 毕设 JAVA JSP 学生成绩分析管理系统sqlserver论文
  3. GCC源码分析(十一) — 函数节点的gimple低端化
  4. 【matplotlib】 findfont: Font family [‘Times New Roman‘] not found. Falling back to DejaVu Sans.
  5. 尺寸链计算——孔轴装配误差
  6. caoz谈能力成长 - 分享的技巧
  7. caoz:数据分析这点事
  8. Python多关键字排序(思路清晰)
  9. adb devices unauthorized问题解决
  10. ubuntu 装机技巧 双系统引导修复boot-repair 换源 github安装 截图 文件夹中文名称改为英文 deb包的安装方法 更改时间