func_code_string: #include <bits/stdc++.h>   using namespace std;   int n, m, adj[25], pode[1 << 23];   int main() {     scanf( %d%d , &n, &m);     if (m == n * (n - 1) / 2) {       puts( 0 );       return 0;     }     for (__typeof(n) i = (0) - ((0) > (n)); i != (n) - ((0) > (n));          i += 1 - 2 * ((0) > (n)))       adj[i] |= 1 << i, pode[1 << i] = 1;     for (__typeof(m) i = (0) - ((0) > (m)); i != (m) - ((0) > (m));          i += 1 - 2 * ((0) > (m))) {       int u, v;       scanf( %d%d , &u, &v);       u--, v--;       adj[u] |= 1 << v;       adj[v] |= 1 << u;     }     int ans = (1 << n) - 1;     for (__typeof((1 << n)) i = (1) - ((1) > ((1 << n)));          i != ((1 << n)) - ((1) > ((1 << n))); i += 1 - 2 * ((1) > ((1 << n))))       if (__builtin_popcount(i) < __builtin_popcount(ans) && pode[i]) {         int cur = 0;         for (__typeof(n) j = (0) - ((0) > (n)); j != (n) - ((0) > (n));              j += 1 - 2 * ((0) > (n)))           if (i & (1 << j)) cur |= adj[j];         if (__builtin_popcount(cur) == n) ans = i;         for (__typeof(n) j = (0) - ((0) > (n)); j != (n) - ((0) > (n));              j += 1 - 2 * ((0) > (n)))           if ((cur & (1 << j)) && !(i & (1 << j))) pode[i | (1 << j)] = 1;       }     printf( %d n , __builtin_popcount(ans));     for (__typeof(n) i = (0) - ((0) > (n)); i != (n) - ((0) > (n));          i += 1 - 2 * ((0) > (n)))       if (ans & (1 << i)) printf( %d  , i + 1);     printf(  n );   }   