博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
京东笔试
阅读量:6587 次
发布时间:2019-06-24

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

#include 
using namespace std;#define maxn 100005int d[maxn];int n;int fa[maxn];void init(int x){ for(int i=1; i<=x; i++) fa[i]=i,d[i]=1;}int find_fa(int x){ return fa[x] == x ? x : fa[x] = find_fa(fa[x]);}void join(int x,int y){ int fx=find_fa(x); int fy=find_fa(y); if(fx!=fy) { fa[fx]=fy; d[fy] += d[fx]; }}int main(){ int x,y,mx=0; cin>>n; init(n); for(int i=1;i
>x>>y; if(x!=1&&y!=1) { join(x,y); } } for(int i=1;i<=n;i++) if(mx
1、逃生救援-把根节点去掉后最大连通块

 

#include
#include
#include
#include
using namespace std;const int MAXN=100005;int vis[MAXN],n;vector
vec[MAXN];int DFS(int root){ vis[root]=1; int sum=1; for(int i=0;i
>n) { for(int i=1;i
>x>>y; vec[x].push_back(y); vec[y].push_back(x); } int sum=0; memset(vis,0,sizeof(vis)); vis[1]=1; for(int i=0;i
dfs做法

 

#include
#define mem(a,b) memset(a,b,sizeof(a))using namespace std;typedef long long ll;const int N=100005;int nxt[N];vector
e[N];void get_nxt(string &t){ int i=0,j=-1,len=t.size(); nxt[0]=-1; while(i
>n; string s; for(int i=0;i
>t[i]; cin>>s; for(int i=0;i
2、寻找子串 dp+kmp

 

 find做法

 

 

转载于:https://www.cnblogs.com/Roni-i/p/10703145.html

你可能感兴趣的文章
java 生成zip文件并导出
查看>>
atitit.userService 用户系统设计 v4 q316 .doc
查看>>
1224 - 搞定 iText 识别文字后翻译
查看>>
《iOS 8开发指南(第2版)》——第6章,第6.3节在Xcode中实现MVC
查看>>
机器人快速崛起:5年内消失510万工作岗位
查看>>
内存泄漏和内存溢出的区别
查看>>
pageinspect分析btree索引结构
查看>>
Jtable Auto Resize Column
查看>>
如何友好地展示findbugs分析报告
查看>>
postgresql 时间类型和相关函数
查看>>
JavaScript权威设计--JavaScript语言核心(简要学习笔记一)
查看>>
”一个封锁操作被对 WSACancelBlockingCall 的调用中断“。解决办法
查看>>
【原创】sysbench 使用总结
查看>>
android:theme决定AlertDialog的背景颜色
查看>>
递归练习(C语言)
查看>>
线性表的链式表示和实现
查看>>
由&quot;缓存&quot;到&quot;Memcached分布式缓存&quot;
查看>>
(一四〇)访问控制:protected
查看>>
几个单词
查看>>
关于vue项目本地运行以后,输入本机ip不能访问的问题
查看>>