func_code_string: #include <bits/stdc++.h>   using namespace std;   int n, m;   int vis[100010], h[100100];   vector<int> res;   set<int> q, off;   int a[100100];   char s[100010][2];   int main() {     int i, j, z, T, d;     while (cin >> n >> m) {       q.clear();       res.clear();       off.clear();       memset(vis, 0, sizeof(vis));       for (i = 1; i <= m; i++) {         scanf( %s%d , s[i], &a[i]);         if (s[i][0] ==  -  && !vis[a[i]]) q.insert(a[i]);         if (s[i][0] ==  +  && !vis[a[i]]) off.insert(a[i]);         vis[a[i]]++;       }       memset(vis, 0, sizeof(vis));       if (q.size() != 0) {         set<int>::iterator it;         for (it = off.begin(); it != off.end(); it++) vis[*it]++;         off.clear();       }       for (i = 1; i <= m; i++) {         if (s[i][0] ==  +  && q.size() != 0) {           set<int>::iterator it;           for (it = off.begin(); it != off.end(); it++) vis[*it]++;           off.clear();         }         if (s[i][0] ==  - ) {           q.erase(a[i]);           off.insert(a[i]);         } else {           if (off.count(a[i]) != 0) off.erase(a[i]);           q.insert(a[i]);         }         if (q.size() != 0) {           set<int>::iterator it;           for (it = off.begin(); it != off.end(); it++) vis[*it]++;           off.clear();         }       }       for (i = 1; i <= n; i++) {         if (!vis[i]) res.push_back(i);       }       printf( %d n , res.size());       for (i = 0; i < res.size(); i++) {         if (i) printf(   );         printf( %d , res[i]);       }       if (res.size() != 0) puts(  );     }     return 0;   }   