Source code for submission s466

furry.cpp

  1. #include <cstdio>
  2. #include <cmath>
  3. #include <cstdio>
  4. #include <cstring>
  5. #include <iomanip>
  6. #include <iostream>
  7. #include <limits.h>
  8. #include <map>
  9. #include <queue>
  10. #include <vector>
  11. #include <set>
  12. #include <stack>
  13. #include <bitset>
  14. #include <string>
  15.  
  16. using namespace std;
  17.  
  18. typedef pair<int,int> ii;
  19. typedef vector<int> vi;
  20. typedef vector<ii> vii;
  21. typedef set<int> si;
  22. typedef set<ii> sii;
  23.  
  24. #define MP make_pair
  25. #define PB push_back
  26. #define REP(i,a) for ( int i = 0; i < int(a); i++)
  27. #define FOR(i,a,b) for ( int i = int(a); i<=int(b); i++)
  28. #define FORD(i,a,b) for(int i= int(a); i>=int(b); i--)
  29.  
  30. const int INF = 1<<29;
  31. typedef long long int ll;
  32.  
  33. int gn[10001][10001];
  34. int gc[10001];
  35. int is[10001];
  36. int con[10001];
  37. int num,n;
  38.  
  39. void dfs(int x){
  40. int xx;
  41. num++;
  42. cout << num << endl;
  43. is[x] = 1;
  44. REP(i,gc[x]){
  45. xx = gn[x][i];
  46. if( !is[xx] ){
  47. dfs(xx);
  48. }
  49.  
  50. }
  51. }
  52.  
  53.  
  54. bool solve(){
  55. REP(i,n){
  56. if(con[i]){
  57.  
  58. if (gc[i] >= 4)return true;
  59. }
  60. }
  61.  
  62.  
  63. return false;
  64. }
  65.  
  66.  
  67. int main(){
  68. int m,x,y;
  69. while ( scanf("%d%d",&n,&m) == 2){
  70. memset(gc,0,sizeof(int)*n);
  71. memset(is,0,sizeof(int)*n);
  72. memset(con,0,sizeof(int)*n);
  73. REP(i,m){scanf("%d%d",&x,&y);
  74. gn[x][gc[x]++] = y;
  75. gn[y][gc[y]++] = x;
  76. con[x] = 1;
  77. con[y] = 1;
  78. }
  79. if ( solve() ) printf("YES\n");
  80. else printf("NO\n");
  81.  
  82.  
  83. };
  84.  
  85.  
  86.  
  87. return 0;
  88. }
  89.  
  90.