AC三个其余TLE,求助
#include <memory.h>
#include <bits/stdc++.h>
#include <map>
#define ll long long int
using namespace std;
const int MAXN=1000110;
ll n;ll m;ll num;ll cnt[MAXN];
string k;
int main()
{
scanf("%lld",&n);
map<string,vector<int> >a;
for(int i=1;i<=n;i++)
{
scanf("%lld",&num);
for(int j=1;j<=num;j++)
{
cin>>k;
a[k].push_back(i);
}
}
scanf("%lld",&m);
for(int i=1;i<=m;i++)
{
cin>>k;
memset(cnt,0,sizeof(cnt));
for(int j=0;j<a[k].size();j++)
{
if(cnt[a[k][j]]==0)
{
cout<<a[k][j]<<" ";
cnt[a[s][j]]++;
}
}
printf("\n");
}
return 0;
}