博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
poj Going from u to v or from v to u? 强联通缩点+拓扑排序(或搜索)
阅读量:5124 次
发布时间:2019-06-13

本文共 1310 字,大约阅读时间需要 4 分钟。

方法一

#include 
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
//#include
using namespace std;typedef long long ll;const int N=1024;struct Edge{ int s,t;};int n,m,dfn[N],low[N],in[N],id[N],cnt,dep,mp[N][N];vector
edge;vector
g[N];stack
st;void Addedge(int u,int v){ Edge tp; tp.s=u,tp.t=v; edge.push_back(tp); g[u].push_back(edge.size()-1);}void dfs(int u){ int v,i,k,mx=dfn[u]=low[u]=dep++; st.push(u); for(i=0;i
low[v]) mx=low[v]; } if(mx

方法二

#include 
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
//#include
using namespace std;typedef long long ll;const int N=1024;struct Edge{ int s,t;};int n,m,dfn[N],low[N],in[N],id[N],cnt,dep,mp[N][N];vector
edge;vector
g[N];stack
st;void Addedge(int u,int v){ Edge tp; tp.s=u,tp.t=v; edge.push_back(tp); g[u].push_back(edge.size()-1);}void dfs(int u){ int v,i,k,mx=dfn[u]=low[u]=dep++; st.push(u); for(i=0;i
low[v]) mx=low[v]; } if(mx
S; for(i=0;i

版权声明:本文为博主原创文章,未经博主允许不得转载。http://xiang578.top/

转载于:https://www.cnblogs.com/xryz/p/4847783.html

你可能感兴趣的文章
Spring Aop——给Advice传递参数
查看>>
mongodb3.0 性能測试报告 一
查看>>
【Android 应用开发】Activity 状态保存 OnSaveInstanceState參数解析
查看>>
linux Packet socket (1)简单介绍
查看>>
STL容器存储的内容动态分配情况下的内存管理
查看>>
ExecuteScalar
查看>>
[LeetCode] Search for a Range [34]
查看>>
一个ssm综合小案例-商品订单管理-第二天
查看>>
迁移学习综述
查看>>
ASCII码排序
查看>>
java 判断两个数是否异号
查看>>
mysql定时任务
查看>>
Java排查问题随笔
查看>>
《Linux内核》课本读书笔记 第三章
查看>>
[原创]传递UIScrollView的滑动事件到其子视图中
查看>>
461. Hamming Distance【数学|位运算】
查看>>
Java面向对象的三大特征
查看>>
SDO_GEOMETRY Object Type
查看>>
OpenGL ES 2.0 for iPhone Tutorial
查看>>
shell 脚本实现退点输出
查看>>