#include <iostream>

#define INF 1e+9
#define MAX_N 101

using namespace std;
int main(void){
	int n;cin>>n;
	int g[MAX_N][MAX_N];
	for(int i=0;i<MAX_N;++i)for(int j=0;j<MAX_N;++j) g[i][j]=INF;
	for(int i=0,r,k;i<n;++i){
		cin>>r>>k;
		for(int j=0,t;j<k;++j){
			cin>>t;
			g[r][t]=1;
		}
	}
	int d[MAX_N][MAX_N];
	for(int i=0;i<MAX_N;++i)for(int j=0;j<MAX_N;++j)d[i][j]=(i==j)?1:INF;
	for(int i=1;i<=n;++i){
		bool f=false;
		for(;;){
			for(int j=1;j<=n;++j){//from
				for(int k=1;k<=n;++k){//to
					if(d[i][j]!=INF && d[i][j] + g[j][k] < d[i][k]){
						d[i][k] = d[i][j] + g[j][k];
						f=true;
					}
				}
			}
			if(f==false) break;
			f=false;
		}
	}
	int p;cin>>p;
	for(int i=0,from,to,v;i<p;++i){
		cin>>from>>to>>v;
		if(d[from][to]>v) cout<<"NA"<<endl;
		else cout<<d[from][to]<<endl;
	}
	return 0;
}