- 博客(3)
- 收藏
- 关注
原创 有向图的强连通分量
对于一个有向图,连通分量:对于分量中任意两点u,v,必然可以从u走到v,且从v走到u.强连通分量:极大连通分量。求出强连通分量后,可以通过将强连通分量缩点的方式,将有向图转化成有向无环图。求强连通分量的方法:tarjan O(n+m),时间复杂度是线性的1 . 采用dfs来遍历整个图,可以将边分为四类 (x->y)2 .如何确定点在连通分量中3 .引入一个时间戳的概念4 . 对于tarjan算法,我的理解是每次都是对以当前的点为根节点的子图进行操作的,遍历完子图中的所有点时,如果dfs[u]==lo
2022-07-14 16:43:59 1268 1
原创 马拉车算法
判断是否为回文串回文字符串是一种正反颠倒之后还与原来相同的字符串,所以当判定一个字符串是否是回文字符串时,我们可以这样判断:(1)当字符串长度为奇数时,找到处于中间位置的下标,比较与它相同远的两个字符是否相同即可(2)长度为偶数时,找到最中间的两个,然后与奇数相同的处理情况即可。#include<iostream>#include<string>using namespace std;string s;int solve1(int x){ int l=
2022-04-12 15:28:44 71
原创 codeforces 779 div2 A~D
cf 779 div2 A~DA Marin and Photoshoot字符串中两个零之间至少间隔两个一,使用for循环判断一遍即可int main(){ string s;int t; cin>>t; while(t--) { int n; string s; cin>>n>>s; int l=-3; int ans=0; for(int i=0;i<n;i
2022-03-30 16:19:56 262
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人