fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int arr[320000],brr[320000],t[320000];
  4. int n,m;
  5. void gcd(int k){
  6. for(int i=1;i<=m;i++){
  7. if(arr[i]==k){
  8. if(t[brr[i]]>=m){
  9. return;
  10. }
  11. t[brr[i]]++;
  12. gcd(brr[i]);
  13. }
  14. }
  15. return;
  16. }
  17. int main(){
  18. ios::sync_with_stdio(false);
  19. cin.tie(0),cout.tie(0);
  20. t[1]=1;
  21. cin>>n>>m;
  22. for(int i=1;i<=m;i++){
  23. cin>>arr[i]>>brr[i];
  24. }
  25. gcd(1);
  26. int ans=0;
  27. for(int i=1;i<=n;i++){
  28. if(t[i]>=1){
  29. ans++;
  30. }
  31. }
  32. cout<<ans;
  33. }
Success #stdin #stdout 0s 5672KB
stdin
3 2
2 1
3 2
stdout
1