Advertisement
gabrielcabezas

Untitled

Mar 23rd, 2018
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.06 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. vector <int> adj[10000];
  4. int vis[10000];
  5. int clr[10000];
  6. bool ok=true;
  7. void dfs (int v)
  8. {
  9. if (vis[v]) return;
  10. vis[v]=1;
  11. for (auto u : adj[v])
  12. {
  13. if (clr[u]==-1)
  14. clr[u]=1-clr[v];
  15. else
  16. {
  17. if (clr[u]==clr[v])
  18. ok=false;
  19. }
  20. dfs(u);
  21. }
  22. }
  23. int t,n,m,a,b;
  24.  
  25. int main()
  26. {
  27. scanf("%d",&t);
  28. for (int y=1;y<=t;y++)
  29. {
  30. memset(vis,0,sizeof vis);
  31. for (int i=0;i<=2001;i++)
  32. adj[i].clear();
  33. for (int i=1;i<=2005;i++)
  34. clr[i]=-1;
  35. ok=true;
  36. scanf("%d %d",&n,&m);
  37. for (int i=0;i<m;i++)
  38. {
  39. scanf("%d %d",&a,&b);
  40. adj[a].push_back(b);
  41. adj[b].push_back(a);
  42. }
  43. clr[1]=0;
  44. dfs(1);
  45.  
  46. printf("Scenario #%d:\n",y);
  47. if (ok)
  48. printf("No suspicious bug found!\n");
  49. else
  50. printf("Suspicious bug found!\n");
  51. }
  52. return 0;
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement