#include <iostream>
using namespace std;
short a[5005][5005];
int count(int id);
int main()
{
int n;cin>>n;
for(int i=1;i<=n;i++)
{
cin>>a[i][0];
for(int j=1;j<=a[i][0];j++)
{
cin>>a[i][j];
}
}
cout<<count(1);
return 0;
}
int count(int id)
{
if(a[id][0]==0) return 1;
int ans = 0;
for(int i=1;i<=a[id][0];i++)
{
ans+=count((int)a[id][i]);
}
return ans+1;
}
这一题我用的是递归。测试了一下,结果貌似没有错,但是TLE,不太知道该怎么提升效率,求大佬指教,谢谢!