记录编号 154022 评测结果 AAAAAAAAAA
题目名称 [HNOI 2004] L语言 最终得分 100
用户昵称 GravatarHouJikan 是否通过 通过
代码语言 C++ 运行时间 0.416 s
提交时间 2015-03-20 22:00:14 内存使用 2.22 MiB
显示代码纯文本
#include <iostream>
#include <cstring>
#include <string>
#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <algorithm>
#include <queue>
#include <stack>
#include <map>
#include <set>
#include <list>
#include <vector>
#include <ctime>
#include <functional>
#define pritnf printf
#define scafn scanf
#define sacnf scanf
#define For(i,j,k) for(int i=(j);i<=(k);(i)++)
#define Clear(a) memset(a,0,sizeof(a))
using namespace std;
typedef unsigned int Uint;
const int INF=0x3fffffff;
const double eps=1e-10;
///==============struct declaration==============
struct Node{
   Node *next[30];
   bool is_end;
   Node (){memset(next,0x0,sizeof(next));is_end=false;}
};
///==============var declaration=================
const int MAXN=1000010;
int n,m;
char Text[MAXN];
bool f[MAXN];
Node *root=new Node;
///==============function declaration============

///==============main code=======================
int main()
{
//#define FILE__
//#ifdef FILE__
   freopen("language.in","r",stdin);
   freopen("language.out","w",stdout);
//#endif
   scanf("%d%d",&n,&m);
   for(int i=1;i<=n;i++){
      char wd[30];scanf("%s",wd);
      int length=strlen(wd);
      Node *p=root;
      for(int i=0;i<length;i++){
         if (p->next[wd[i]-'a']==NULL)
            p->next[wd[i]-'a']=new(Node);
         p=p->next[wd[i]-'a'];
      }
      p->is_end=true;
   }
   for(int i=1;i<=m;i++){
      scanf("%s",Text);
      int length=strlen(Text),ans=-1;
      for(int st=0;st<length;st++){
         if (st!=0&&!f[st-1]) continue;
         Node *p=root;int x=st;
         while (x<length&&p->next[Text[x]-'a']!=NULL){
            p=p->next[Text[x]-'a'];
            if (p->is_end){
               f[x]=true;
               ans=max(ans,x);
            }
            x++;
         }
      }
      printf("%d\n",ans+1);
      memset(f,false,sizeof(bool)*(ans+100));
   }
   return 0;
}
///================fuction code====================