fork download
  1. #include <bits/stdc++.h>
  2.  
  3. using namespace std;
  4. int n,k,m;
  5. vector<int> adj[1001];
  6. int a[101],cnt[1001];
  7. bool vt[1001];
  8.  
  9. void dfs(int u)
  10. {
  11.  
  12. vt[u]=1;
  13. cnt[u]++;
  14. for(int v : adj[u])
  15. {
  16. if(!vt[v])
  17. dfs(v);
  18. }
  19. }
  20. int main()
  21. {
  22. ios_base::sync_with_stdio(0);
  23. cin>>k>>n>>m;
  24.  
  25. for(int i=1;i<=k;i++)
  26. {
  27. cin>>a[i];
  28. }
  29.  
  30. for(int i=1;i<=m;i++)
  31. {
  32. int u,v;cin>>u>>v;
  33. adj[u].push_back(v);
  34. }
  35.  
  36. for(int i=1;i<=k;i++)
  37. {
  38. dfs(a[i]);
  39. memset(vt,0,sizeof(vt));
  40. }
  41.  
  42. int d=0;
  43. for(int i=1;i<=n;i++)
  44. {
  45. if(cnt[i] == k) d++;
  46. }
  47. cout<<d;
  48. return 0;
  49. }
  50.  
Success #stdin #stdout 0s 5320KB
stdin
Standard input is empty
stdout
Standard output is empty