#include #include #include #include #include #include #include using namespace std; set S[100]; map mp; vector< vector > vs; int search(int cur){ for(int i=0;i::iterator it=S[next].begin();it!=S[next].end();it++) S[cur].insert(*it); } else{ S[cur].insert(vs[cur][i]); } } return S[cur].size(); } int main(){ int n; ifstream fin("A.in"); while(fin >> n, n){ mp.clear(); vs.assign(n, vector()); for(int i=0;i> str; for(int j=0;j> str; mp[str] = i; while(iss >> str) vs[i].push_back(str); } cout << search(0) << endl; } }