#include<cstdio>
#include<cstring>
using namespace std;
#define id(x) x-'a';
struct st{
int nex[26];
int f,t;
}s[911999];
int tot=1;
char st[199];
void insert(char ste[])
{
int rt=0,len=strlen(ste);
for(int i=0;i<len;i++)
{
int c=id(ste[i]);
if(!s[rt].nex[c])
{
s[rt].nex[c]=tot++;
}
rt=s[rt].nex[c];
}
s[rt].f++;
}
int find(char ste[])
{
int rt=0,len=strlen(ste);
for(int i=0;i<len;i++)
{
int c=id(ste[i]);
if(!s[rt].nex[c])
{
return 0;
}
rt=s[rt].nex[c];
}
if(s[rt].f)
return 1;
return 0;
}
int n,m;
int main()
{
scanf("%d",&n); scanf("%d",&m);
for(int i=1;i<=n;i++)
{
scanf("%s",st);
insert(st);
}
for(int i=1;i<=m;i++)
{
scanf("%s",st);
int w=find(st);
if(!w)printf("WRONG\n");
else if(w==1)printf("OK\n");
else printf("REPEAT\n") ;
}
}
字典树
最新推荐文章于 2023-05-05 18:00:00 发布