#include<bits/stdc++.h>
#include <queue>
using namespace std;
const int maxsize=100002;
vector<int> v[maxsize];
bool is[maxsize]={false};
int level[maxsize]={0};
int main()
{
int n;
cin>>n;
for(int i=1;i<=n;++i)
{
int k;
cin>>k;
if(k==0)
continue;
for(int j=0;j<k;++j)
{
int num;
cin>>num;
is[num]=true;
v[i].push_back(num);
}
}
int f=0;
for(int i=1;i<=n;++i)
{
if(is[i]==false)
{
f=i;
}
}
queue<int>q;
q.push(f);
level[f]=1;
while(!q.empty())
{
int top=q.front();
q.pop();
for(int i=0;i<v[top].size();++i)
{
q.push(v[top][i]);
level[v[top][i]]=level[top]+1;
}
}
int max=0;
int index=0;
for(int i=1;i<=n;++i)
{
if(level[i]>max)
{
max=level[i];
index=i;
}
}
cout<<index;
return 0;
}
考场没有ac重新想想还挺简单的