luoguhandongheng @ 2022-01-29 11:05:52
#include <bits/stdc++.h>
#include <cstring>
using namespace std;
int n,c,book[1005];
struct node
{
string a;
}q[1005];
bool cmp(node x,node y)
{
return x.a>y.a;
}
string tmp;
string x;
int findb()
{
int l=tmp.size();
for(int i=0;i<l;i++)
{
int t=l-i;
if(x==tmp.substr(i,t))
return 1;
}
return -1;
}
int main()
{
cin>>n>>c;
for(int i=1;i<=n;i++)
{
cin>>q[i].a;
}
sort(q+1,q+1+n,cmp);
for(int i=1;i<=c;i++)
{
cin>>x;
cin>>x;
for(int j=1;j<=n;j++)
{
tmp=q[j].a;
int t=findb();
if(t==1)
{
book[i]=j;
break;
}
else
{
book[i]=-1;
}
}
}
for(int i=1;i<=c;i++)
{
if(book[i]>0)
cout<<q[book[i]].a<<endl;
else
cout<<-1<<endl;
}
}