本文共 1154 字,大约阅读时间需要 3 分钟。
昨天刚刚学习了EXKMP
于是我就用了EXKMP做了这道题
找完pre后就用前缀和就好
为了节约清空的时间,我加了时间戳t[]
1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 #include 12 #include 13 #define rre(i,r,l) for(int i=(r);i>=(l);i--)14 #define re(i,l,r) for(int i=(l);i<=(r);i++)15 #define Clear(a,b) memset(a,b,sizeof(a))16 #define inout(x) printf("%d",(x))17 #define douin(x) scanf("%lf",&x)18 #define strin(x) scanf("%s",(x))19 #define LLin(x) scanf("%lld",&x)20 #define op operator21 #define CSC main22 typedef unsigned long long ULL;23 typedef const int cint;24 typedef long long LL;25 using namespace std;26 void inin(int &ret)27 {28 ret=0;int f=0;char ch=getchar();29 while(ch<'0'||ch>'9'){ if(ch=='-')f=1;ch=getchar();}30 while(ch>='0'&&ch<='9')ret*=10,ret+=ch-'0',ch=getchar();31 ret=f?-ret:ret;32 }33 int n,pre[1000010];34 char s[1000010];35 void getpre()36 {37 int len=strlen(s),a=0;38 pre[0]=len;39 while(a =p)46 {47 int j=(p-k+1)>0?p-k+1:0;48 while(k+j
转载于:https://www.cnblogs.com/HugeGun/p/5217515.html