fork(1) download
  1. #include <iostream>
  2. #include<algorithm>
  3. #include<vector>
  4. using namespace std;
  5.  
  6. vector<int>val;
  7.  
  8. int main() {
  9. // your code goes here
  10. while(1)
  11. {
  12. int n,e,x,y,i,j;
  13. cin>>n>>e;
  14. if(n==0)
  15. break;
  16. int vis[n+1];
  17. int a[n+1][n+1];
  18. val.clear();
  19. for(i=0;i<n;i++)
  20. {
  21. vis[i]=0;
  22. for(j=0;j<n;j++)
  23. a[i][j]=0;
  24. }
  25. while(e--)
  26. {
  27. cin>>x>>y;
  28. a[x-1][y-1]=1;
  29. }
  30.  
  31. for(i=0;i<n;i++)
  32. {
  33. for(j=0;j<n;j++)
  34. {
  35. if(a[i][j]==1 && a[j][i]==1)
  36. val.push_back(i);
  37. }
  38. }
  39.  
  40. for(i=0;i<(int)val.size();i++)
  41. {
  42. vis[val[i]]=1;
  43. }
  44.  
  45. for(i=0;i<n;i++)
  46. {
  47. int f=0;
  48.  
  49. if(vis[i]==0)
  50. {
  51. //cout<<" i = "<<i<<endl;
  52. for(j=0;j<n;j++)
  53. {
  54. if(a[i][j]!=0)
  55. {
  56. f=1; break;
  57. }
  58. }
  59.  
  60. if(f==0)
  61. val.push_back(i);
  62. }
  63. }
  64.  
  65. if(val.size()==0)
  66. cout<<endl;
  67. else
  68. {
  69. for(i=0;i<(int)val.size();i++)
  70. {
  71. val[i]=val[i]+1;
  72. }
  73.  
  74. sort(val.begin(), val.end());
  75.  
  76. for(i=0;i<(int)val.size();i++)
  77. cout<<val[i]<<" ";
  78.  
  79. cout<<endl;
  80. }
  81. }
  82. return 0;
  83. }
Success #stdin #stdout 0s 3480KB
stdin
3 3
1 3 2 3 3 1
2 1
1 2
0
stdout
1 3 
2