最后一个点TLE,在线等大佬Debug
#include<bits/stdc++.h>
using namespace std;
#define int long long
struct node{
string input;
int len;
map<string,int> mp;
}a[1010];
int l,m,n;
string fj;
inline void cl(string k,const int num)
{
string now="";
k+=' ';
for(int i=0;i<k.size();i++)
{
if(k[i]!=' ') now+=k[i];
else
{
a[num].mp[now]=1;
now="";
}
}
return;
}
signed main(){
scanf("%lld",&n);
getchar();
for(int i=1;i<=n;i++)
{
a[i].len=0;
scanf("%lld",&l);
getchar();
getline(cin,a[i].input);
cl(a[i].input,i);
}
scanf("%lld",&m);
getchar();
for(int i=1;i<=m;i++)
{
getline(cin,fj);
vector<int> v;
for(int j=1;j<=n;j++)
{
if(a[j].mp[fj]!=0)
{
v.push_back(j);
}
}
for(int i=0;i<v.size();i++)
{
if(i==0) printf("%lld",v[i]);
else printf(" %lld",v[i]);
}
puts("");
}
return 0;
}