![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
字符串
Daniel__d
这个作者很懒,什么都没留下…
展开
-
P4199-FFT,manacher
P4199题目描述题解代码#include<bits/stdc++.h>#define ll long long#define LL unsigned long long#define M 2000009using namespace std;int read(){ int f=1,re=0;char ch; for(ch=getchar();!isdigit(ch)&&ch!='-';ch=getchar()); if(ch=='-'){f=-1,ch原创 2020-08-01 20:51:29 · 118 阅读 · 0 评论 -
P4173 残缺的字符串(单模式字符串匹配FFT)
P4173题目描述题解代码#include<cmath>#include<cstdio>#include<climits>#include<cstring>#include<cstdlib>#include<iostream>#include<algorithm>using namespace std;int read(){ int f=1,re=0;char ch; for(ch=getcha原创 2020-07-31 21:36:23 · 170 阅读 · 0 评论 -
工艺-后缀自动机
工艺-后缀自动机题目描述题解对于字符集大小不为常数的后缀自动机题,可以暴力建mapmapmap首先倍长序列,对倍长过后的序列建后缀自动机,然后根据贪心,直接从根节点遍历n次输出答案即可(其实还是有点不懂)(坑:数组必须开到1e6,不知为啥)代码实现#include<bits/stdc++.h>//SAM#define M 1000009using namespace...原创 2020-03-29 10:51:46 · 101 阅读 · 0 评论 -
SP1812-LCS2-后缀自动机
SP1812-LCS2-后缀自动机题目描述题解对于一个串构建SAMSAMSAM每个串依次进行匹配同时记录tr[i].maxntr[i].maxntr[i].maxn表示走到了iii节点能够匹配上的最长公共子串的长度当然,每个串的tr[i].maxn可以更新tr[tr[i].fa].maxntr[tr[i].fa].maxntr[tr[i].fa].maxn所以需要拓扑排序对于每个...原创 2020-03-29 10:52:01 · 162 阅读 · 0 评论 -
SPOJ1811-LCS-后缀自动机
SPOJ1811-LCS-后缀自动机题目描述题解首先对AAA串建立一个后缀自动机,然后让BBB串一个一个字符去匹配;匹配方式:首先置len=0len=0len=0,然后从根节点开始遍历下去1,如果当前节点存在,就len++len++len++,继续遍历下一个节点2,如果当前节点不存在,就跳该节点的fafafa,2.1,如果跳的过程中找到了该节点,那么就继续从该节点遍历下去,len...原创 2020-03-29 10:52:11 · 128 阅读 · 0 评论 -
A Horrible Poem-字符串哈希+线性筛
A Horrible Poem-字符串哈希+线性筛题目描述题解首先明确几个性质1,循环节的长度必为该区间S[a...b]S[a...b]S[a...b]长度的约数—显而易见2,当S[a...b−len]==S[a+len...b]S[a...b-len]==S[a+len...b]S[a...b−len]==S[a+len...b]时,S[x...y]S[x...y]S[x...y]必...原创 2020-03-29 10:52:20 · 558 阅读 · 0 评论 -
HDU3973-字符串哈希+线段树
HDU3973-字符串哈希+线段树题目描述即给你一个母串,和nnn个字符串,mmm次操作,每次操作有两种:1,询问母串中l到r位置的字串是否在nnn个字符串中出现过;2,修改母串中xxx位置的字母题解字符串哈希套线段树裸题(注意查询操作,对于类似的区间合并,常用该种查询方式)还有一个坑,代码中有说代码实现#include <stdio.h>//字符串哈希套线段树-AC#...原创 2020-03-29 10:52:31 · 225 阅读 · 0 评论 -
回文字串-字符串哈希
回文子串-字符串哈希前言求解回文字串问题不仅可以用马拉车算法(O(n))(O(n))(O(n)),也可以用字符串哈希(O(nlogn))(O(nlogn))(O(nlogn))解法首先我们发现回文子串具有“单调性”,即如果s[i...j]s[i...j]s[i...j]为回文子串,那么s[x...y]s[x...y]s[x...y]也为回文子串(i<x<y<j)(i<...原创 2020-03-29 10:52:41 · 931 阅读 · 0 评论 -
191021-KMP算法
KMP算法模板#include<bits/stdc++.h>using namespace std;int n,m,T,nxt[100009];char s[100009],t[100009];int main(){ scanf("%d",&T); while(T--) { scanf("%s%s",s+1,t+1); n=strlen(s+1);...原创 2019-10-31 20:01:27 · 100 阅读 · 0 评论