fork download
  1. #include<bits/stdc++.h>
  2.  
  3. using namespace std;
  4. bool bfs(vector<int> adj[],int start,int n)
  5. {
  6. bool visited[n+1];
  7. queue<int> q;
  8. q.push(start);
  9. memset(visited,false,sizeof(visited));
  10. while(!q.empty())
  11. {
  12. int panty=q.front();
  13. q.pop();
  14. visited[panty]=true;
  15. for(int i=0;i<adj[panty].size();i++)
  16. {
  17. if((visited[adj[panty][i]])==false)
  18. {
  19.  
  20. q.push(adj[panty][i]);
  21.  
  22. }
  23. }
  24.  
  25. }
  26. int ekka=0;
  27. for(int i=0;i<n;i++)
  28. {
  29. if(!visited[i])
  30. {
  31. ekka=1;
  32. break;
  33. }
  34.  
  35. }
  36. if(ekka=0)
  37. return false;
  38. else
  39. return true;
  40. }
  41. int main()
  42. {
  43. int n,m;
  44. cin>>n>>m;
  45. vector<int> adj[n+1];
  46. for(int i=0;i<m;i++)
  47. {
  48. int x,y;
  49. cin>>x>>y;
  50. adj[x].push_back(y);
  51. adj[y].push_back(x);
  52. }
  53. if( bfs(adj,1,n))
  54. cout<<"YES"<<endl;
  55. else
  56. cout<<"NO"<<endl;
  57.  
  58.  
  59. }
Runtime error #stdin #stdout 0s 3472KB
stdin
Standard input is empty
stdout
Standard output is empty