// 0144
#include <iostream>
#include <vector>
#include <queue>
#define  N    1000
using namespace std;

void p_transport(int s, int d, int v, vector<vector<int> > R){
	vector<int> dis;

	for(int i=0;i<R.size();i++)
		if(i == s)
			dis.push_back(1);
		else
			dis.push_back(N);

	queue<int> ver;
	ver.push(s);

	while(!ver.empty()){
		int x = ver.front();
		for(int i=0;i<R[x].size();i++)
			if(dis[R[x][i]] > dis[x] + 1){
				dis[R[x][i]] = dis[x] + 1;
				ver.push(R[x][i]);
			}
		ver.pop();
	}

	if(dis[d] <= v)
		cout<<dis[d]<<endl;
	else
		cout<<"NA"<<endl;
}

int main(){
	int n, r, k, t;
	vector<vector<int> > router;

	cin>>n;
	router.resize(n+1);

	for(int i=0;i<n;i++){
		cin>>r>>k;

		for(int j=0;j<k;j++){
			cin>>t;
			router[r].push_back(t);
		}
	}

	int p, s, d, v;
	cin>>p;

	for(int i=0;i<p;i++){
		cin>>s>>d>>v;

		p_transport(s, d, v, router);
	}

	return 0;
}