コード例 #1
0
ファイル: LCS.cpp プロジェクト: fish-ball/acmlib_sclproject
int LCS(char *s1, int l1, char *s2, int l2, int &ansi, int &ansj)
{
    int i,j,k,l,ans=0; ansi=0; ansj=0;
    for(i=0; i<l1-ans; i++)
    {
        makefail( s1+i, l1-i );
        kmp( s2, l2, s1+i, l1-i, 0, l, j);
        if(l>ans) { ans=l; ansi=i; ansj=j; }
    }
    return ans;
}
コード例 #2
0
ファイル: AC自动机.cpp プロジェクト: 1292765944/ACM
int main(){
    scanf("%d",&cas);
    for(int ca=1;ca<=cas;ca++){
        scanf("%d",&n);
        pos=0;newnode();
        for(int i=1;i<=n;i++){
            scanf("%s",s);
            insert(s);
        }
        makefail();
        scanf("%s",find);
        int x=makeans(find);
        printf("%d\n",x);
    }
    return 0;
}