_____字符串_____
zxyoi_dreamer
退役了退役了爬了爬了,搞个锤子算法竞赛,不如好好享受大学生活。
展开
-
【模板】manacher算法
参考题目:洛谷P3085解析:关于manachermanachermanacher的讲解目前网上有很多啊,画图手残党可能要很久以后才会更新。代码:#include<bits/stdc++.h>using namespace std;#define re register#define ll long long#define gc getchar...原创 2018-09-11 21:23:29 · 110 阅读 · 0 评论 -
2018.09.11【国家集训队】最长双回文子串(manacher)
传送门解析:首先,是个人都应该知道要先上个manachermanachermanacher。。。接下来应该就是枚举每个点为断点,左右分别为回文子串的最长长度。我们考虑用anslanslansl和ansransransr两个数组分别表示以这个位置为起始、终止位置的极长回文子串长度。显然最后统计答案就是O(n)O(n)O(n)遍历一下两个数组求最大值。那么问题来了。 ...原创 2018-09-11 22:01:11 · 124 阅读 · 0 评论 -
【模板】最小表示法
参考题目:洛谷P1368解析:联赛完后统一更所有模板题题解代码:#include<bits/stdc++.h>using namespace std;#define ll long long#define re register#define gc getchar#define pc putchar#define cs constinlineint get...原创 2018-10-06 14:26:38 · 602 阅读 · 0 评论 -
【模板】后缀数组SA
参考题目:UOJ35解析:这次贴的代码有点多,除了最裸的暴力,基本上能够想到的其他各种复杂度能够过和不能过的我都去写了一遍。但是解析可能要不知道什么时候更了。。。之后会把后缀数组所有用途和性质都更新过来的。代码:哈希二分+快速排序(复杂度O(nlog2n)O(n\log^2n)O(nlog2n)):#include&lt;bits/stdc++.h&gt;using name...原创 2018-11-30 20:59:07 · 229 阅读 · 0 评论 -
2019.02.22【TJOI2018】【BZOJ5336】【洛谷P4590】游园会 party(自行构建自动机)(状压DP)
BZOJ传送门洛谷传送门解析:首先对串NOI建立AC自动机(Trie图),为了排除所有匹配上的情况。显然这个Trie图只有九种转移,三个节点,直接手打就行了,int tr1[3][3]={ {1,0,0}, {1,2,0}, {1,0,3}};3状态就是匹配上的终态,非法。维护一维记录当前在这个自动机上匹配到哪个节点了。然后考虑这个鬼畜的东西:LCSLCSLCS。注意这...原创 2019-02-22 13:49:41 · 234 阅读 · 0 评论