回文自动机
ccosi
停下了,也要重新出发
展开
-
【BZOJ】2160拉拉队排练-回文自动机
题解这题好坑啊。模数也十分诡异。 注意:K≤1012K≤1012K\leq 10^{12},要开long longlong longlong\ long。 注意:只要奇数个数的回文串 注意:达不到KKK个输出−1−1-1 还得套个快速幂代码#include<bits/stdc++.h>using namespace std;typ...原创 2018-07-17 21:19:57 · 209 阅读 · 0 评论 -
【BZOJ】2565最长双回文串-回文自动机
题解这题可以马拉车水过。拿回文自动机来做一做也是一样的。 lilil_i表示以第i个字符为末位置的字符串前缀的最大回文后缀。ririr_i表示以第i个字符为首位置的字符串后缀的最大回文前缀。 那么就正着反着各做一遍回文自动机。 注意这里struct两个就好了,千万不要省空间第二遍memset用同一个数组,貌似我O(n∗26)O(n∗26)O(n*26)就TLE了。还debug了许久。 ...原创 2018-07-17 21:15:51 · 231 阅读 · 0 评论 -
【HDU】5421Victor and String -双端回文自动机
题解这题一眼建双端回文自动机。 可是怎么建啊…这个操作十分巧妙,感觉要真正理解回文自动机才行。 先把字符串大小开到两倍,每次插入处理在中端点的位置,同时pos[0/1]记一下字符串位于两端的位置。 但这是回文自动机,性质十分特殊。自动机上的每个节点对应一个回文子串,那么其实前端和后端的加入处理起来并不麻烦,可以在同一自动机上处理。 前端的last指向的即字符串最长回文前缀,后端的las...原创 2018-07-17 21:06:51 · 320 阅读 · 0 评论 -
【BZOJ】3676 [Apio2014]回文串
题解这就是个回文自动机模板….代码#include<bits/stdc++.h>using namespace std;typedef long long ll;const int N=3e5+100;int n,ch[N][26],f[N],len[N],cnt,p;char s[N];ll ans,cur[N];inline int new_no...原创 2018-07-17 20:46:35 · 135 阅读 · 0 评论 -
【BZOJ】4044: [Cerc2014] Virus synthesis-回文自动机
回文自动机DP,记录父结点信息转移原创 2018-12-06 19:13:03 · 233 阅读 · 0 评论