我同学一直瞎咧咧我写的函数是死循环???有没有dalao帮忙看一下
p5908
代码
#include<bits/stdc++.h>
using namespace std;
const int N=1e6+114;
int n,d;
vector<int> a[N];
int u,v;
bool pd[N];
int ans;
int dt(int to){
pd[to]=1;
if(a[to].size()!=0) {
for(int i=0;i<a[to].size();i++){
dt(a[to][i]);
}
}
}
int main(){
cin.tie(0);cout.tie(0);
cin>>n;
for(int i=1;i<=n-1;i++){
cin>>u>>v;
a[u].push_back(v);
}
dt(1);
for(int i=1;i<=n;i++){
if(pd[i]==true) ans++;
}
cout<<ans;
}