poj 1625 Censored!

题目链接:http://poj.org/problem?id=1625

题目大意:求不包含禁止串的长度为m的字符串个数。

题目思路:ac自动机,不过要用高精度,需要注意的是字符串有空格,而且要用无符号字符型,以前写的高精度用的是字符串模拟,这次见网上都用整型,且每一个整型数存多位十进制,而且效率很高,就果断学习了。

#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
#define inf 0x3f3f3f3f
#define Max 110
#define mod 1000000000
int max(int a,int b)
{
	return a>b?a:b;
}
int min(int a,int b)
{
	return a=1;i--)
    {
        printf("%09d",ans.d[i]);
    }
    puts("");
}
void insert(unsigned char *s)
{
    int i,x,p;
    p=0;
    for(i=0;s[i];i++)
    {
        x=mp[s[i]];
        if(!tri[p].next[x])
        {
            tri[++cnt].init();
            tri[p].next[x]=cnt;
        }
        p=tri[p].next[x];
    }
    tri[p].cnt++;
}
void bfs()
{
    int i,p=0,suf,head=0,tail=0;
    for(i=0;i


你可能感兴趣的:(poj 1625 Censored!)