func_code_string: #include <bits/stdc++.h>   using namespace std;   int n, m;   bool flag[21][21];   int deg[21], id[21];   vector<int> G[21];   inline int cmp(int x, int y) {     return deg[x] != deg[y] ? deg[x] < deg[y] : x < y;   }   bool vis[21];   inline void dfs(int np) {     vis[np] = 1;     for (int &x : G[np]) {       if (!vis[x]) {         dfs(x);         return;       }     }   }   int main() {     scanf( %d%d , &n, &m);     for (int i = 1, ti, tj; i <= m; i++) {       scanf( %d%d , &ti, &tj);       if (ti != tj) flag[ti][tj] = flag[tj][ti] = 1;     }     for (int i = 1; i <= n; i++) {       id[i] = i;       for (int j = 1; j <= n; j++) {         if (flag[i][j]) deg[i]++, G[i].push_back(j);       }     }     for (int i = 1; i <= n; i++) sort(G[i].begin(), G[i].end(), cmp);     for (int i = 1; i <= n; i++) {       memset(vis, 0, sizeof(vis));       dfs(i);       int cnt = 0;       for (int j = 1; j <= n; j++) cnt += vis[j];       if (cnt == n) {         puts( Yes );         return 0;       }     }     puts( No );     return 0;   }   