- 博客(8)
- 收藏
- 关注
转载 奇yin技巧
关于一些奇yin技巧 关于删除字符串中的一些字串,并且考虑新的字串 例题:luogu4824 luogu3121 方法:开一个栈记录,发现字串后剪去字串长度。 for(int i=1;i<=len;++i){ now=ne[now][S[i]-'a']; st[++T]=now;ch[T]=S[i]; if(num[now])T-=num[now],now=...
2019-04-17 19:54:00
158
转载 P2757 [国家集训队]等差子序列
P2757 [国家集训队]等差子序列 题目传送门 推荐一篇好题解 此题要求我们在一个序列中找出一个等差子序列。 显然,我们只需要考虑子序列长度len=3的情况,因为在长度为4的子序列中必定有一个长度为3的子序列。 问题就变成了:在序列找到三个数,满足a[j]-a[i]=a[k]-a[j]且i<j<k 移项,a[i]+a[k]=2 × a[j] O(\(n^2\))的做法肯定是...
2019-04-15 21:06:00
183
转载 数学模板
关于一些数学模板 线性筛 for(int i=2;i<=n;++i){ if(!f[i])pri[++tot]=i; for(int j=1;j<=tot&&pri[j]*i<=n;++j){ f[pri[j]*i]=1; if(i%pri[j]==0)break; } } n!分解质因数 void...
2019-03-27 21:09:00
128
转载 关于tarjan
关于Tarjan算法 梗概 tarjan算法有两种(我了解的),一种是用来求强连通分量的,另一种是关于割点和桥的问题。 根据机房大佬HL说过,这两种算法是互相独立的,只是代码很像。 强连通分量问题 关于这类tarjan算法,我了解到的主要的一个应用就是缩点。 例题传送门 思路 首先,如果我们考虑,如果这是一个有向无环图,我们可以用拓扑排序(DP?)的方法直接求出答案。 但是这个图是一个...
2019-03-19 21:15:00
96
转载 loj题目总览
——DavidJing提供技术支持 现将今年7月份之前必须刷完的题目列举 完成度[25/34] [195/250] 第 1 章 贪心算法 √ [11/11] #10000 「一本通 1.1 例 1」活动安排 #10001 「一本通 1.1 例 2」种树 #10002 「一本通 1.1 例 3」喷水装置 #10003 「一本通 1.1 例 4」加工生产调度 #10004 「一本通 1.1 ...
2019-02-28 20:57:00
718
转载 初识KMP
初识KMP 例题传送门 KMP算法是一种改进的字符串匹配算法,时间复杂度为O(m+n)。 ——百度百科 KMP算法最重要的一个内容就是next数组,它让KMP算法从普通的字符串匹配算法的O(mn)优化到了O(n+m)。 next数组主要的功能就是让两个串匹配失败时,能够快速地找到下一个匹配的地方。 例如: 串A——> ABABABC 串B——> ABA next数组要...
2019-01-27 16:32:00
117
转载 #10038.A Horrible Poem
#10038.A Horrible Poem 题目传送门 思路解析 既然这道题目在hash板块里,那么自然就可以想到用hash做这道题目。 首先我们可以用hash数组存储字符串的前缀的hash值。 因为我们需要找到S[a..b] 的最短循环节长度,所以我们可以枚举循环节长度 i 。 由于循环要遍历完整个字串。所以设字串长度为 \(len\) ,就有: if(len%i)continue;...
2019-01-07 22:38:00
181
转载 Luogu 3371【模板】单源最短路径
Luogu 3371【模板】单源最短路径 第一次写博客用图论题来试一试 接下来是正文部分 题目描述 如题,给出一个有向图,请输出从某一点出发到所有点的最短路径长度。 输入输出格式 输入格式: 第一行包含三个整数N、M、S,分别表示点的个数、有向边的个数、出发点的编号。 接下来M行每行包含三个整数Fi、Gi、Wi,分别表示第i条有向边的出发点、目标点和长度。 输出格式: 一行,包含N个用空...
2018-06-29 19:25:00
95
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人