#include<iostream>
#include<stack>
#include<vector>
#include <map>
#include <queue>
#include<string.h>
using namespace std;
typedef pair<int,int> P;
vector<int> node[200];

int que(int s,int d,int v)
{
  queue<P> qu;
  int c[200];
  memset(c,-1,sizeof(c));
  for(int i=0;i<node[s].size();i++)
    {
      if(v-1>0)
	qu.push(P(node[s][i],v-1));      
    }
  while(!qu.empty())
    {
      P a = qu.front();
      qu.pop();
      //      cout<<a.first<<" "<<a.second<<endl;
      if(a.first==d)
	return v-a.second+1;
      for(int i=0;i<node[a.first].size();i++)
	{
	  if(a.second-1>0)
	    {
	      if(c[node[a.first][i]]==-1)
		{
		  c[node[a.first][i]]=a.second-1;
		  qu.push(P(node[a.first][i],a.second-1));	    
		}
	    }
	} 
    }
      return -1;
}
int main()
{
  int n;
  cin>>n;
  for(;n--;)
    {
      int k,t;
      cin>>k>>t;
      for(int i=0;i<t;i++)
	{
	  int tmp;
	  cin>>tmp;
	  node[k].push_back(tmp);
	}
    }
  int p;
  cin>>p;
  for(;p--;)
    {
      int s,d,v;
      cin>>s>>d>>v;
      int ans=que(s,d,v);
      if(ans==-1)
	cout<<"NA"<<endl;
      else
	cout<<ans<<endl;
      
    }
  
}