POJ - 2406 Power Strings (后缀数组dc3算法模板)

题目:给出一个字符串 问它最多由多少相同的字串组成 。

kmp简单的三十行代码而且时间还快,一切都是为了dc3模板

/*
复杂度接近O(n)
所有相关数组都要开三倍
*/
#include
#include
#include
#include
#define F(x) ((x)/3+((x)%3==1?0:tb))
#define G(x) ((x)=0;i--)
        b[--wss[wv[i]]]=a[i];
}
void dc3(int *r,int *sa,int n,int m)
{
    int i,j,*rn=r+n;
    int *san=sa+n,ta=0,tb=(n+1)/3,tbc=0,p;
    r[n]=r[n+1]=0;
    for(i=0;i

 

你可能感兴趣的:(字符串,后缀数组)