Submission #257733

#TimeUsernameProblemLanguageResultExecution timeMemory
257733Noam13Last supper (IOI12_supper)C++14
Compilation error
0 ms0 KiB
#include "advisor.h" #include <bits/stdc++.h> #define vi vector<int> #define vb vector<bool> #define ii pair<int,int> #define vvi vector<vi> #define vvb vector<vb> #define vii vector<ii> #define vvii vector<vii> #define x first #define y second #define pb push_back #define mp make_pair #define loop(i,s,e) for(int i=s;i<e;i++) #define loopr(i,s,e) for(int i=e-1;i>=s;i--) #define chkmax(a,b) a=max(a,b) #define chkmin(a,b) a=min(a,b) #define all(x) x.begin(),x.end() using namespace std; const int INF = 1e9, MOD=1e9+7; void ComputeAdvice(int *C, int n, int k, int M) { vi a(n+k); loop(i,0,k) a[i]=i; loop(i,0,n) a[i+k]=C[i]; vi next(n+k); vi last(n, -1); loopr(i,0,n+k) { next[i] = last[a[i]]; last[a[i]] = i; } set<ii> q; map<int, int> in; loop(i,0,k) { q.insert({next[i],i}); in[i] = i; } vb bits(n+k); loop(i,k,n+k){ if (in.find(a[i])!=in.end()){ //already in bits[in[a[i]]] = 1; in[a[i]] = i; q.erase({a[i],i}); q.insert({a[i], next[i]}); } else{ //out ii cur = *q.begin(); q.erase(q.begin()); bits[cur.y] = 0; in.erase(cur.x); q.insert({next[i], i}); } } loop(i,0,n+k) WriteAdvice(bits[i]); } /* color a cls g++ advisor.cpp -o a & a */
define vb vector<bool> #define ii pair<int,int> #define vvi vector<vi> #define vvb vector<vb> #define vii vector<ii> #define vvii vector<vii> #define x first #define y second #define pb push_back #define mp make_pair #define loop(i,s,e) for(int i=s;i<e;i++) #define loopr(i,s,e) for(int i=e-1;i>=s;i--) #define chkmax(a,b) a=max(a,b) #define chkmin(a,b) a=min(a,b) #define all(x) x.begin(),x.end() using namespace std; const int INF = 1e9, MOD=1e9+7; void Assist(unsigned char *A, int n, int k, int R) { map<int, int> s; set<int> fre; loop(i,0,k) { s[i] = i; if (!A[i]) fre.insert(i); } //cout<<"HI"<<endl; loop(i,k,n+k){ int v = GetRequest(); if (s.find(v)!=s.end()){ int ind = s[v]; s[v] = i; if (A[i]==A[ind]) continue; if (!A[i]) fre.insert(v); else fre.erase(v); } else{ int back = *fre.begin(); PutBack(back); s.erase(back); fre.erase(fre.begin()); if (!A[i]) fre.insert(v); s[v] = i; } } }

Compilation message (stderr)

assistant.cpp:1:1: error: 'define' does not name a type
 define vb vector<bool>
 ^~~~~~
assistant.cpp: In function 'void Assist(unsigned char*, int, int, int)':
assistant.cpp:20:2: error: 'map' was not declared in this scope
  map<int, int> s; 
  ^~~
assistant.cpp:20:2: note: suggested alternative: 'mp'
  map<int, int> s; 
  ^~~
  mp
assistant.cpp:20:6: error: expected primary-expression before 'int'
  map<int, int> s; 
      ^~~
assistant.cpp:21:2: error: 'set' was not declared in this scope
  set<int> fre;
  ^~~
assistant.cpp:21:6: error: expected primary-expression before 'int'
  set<int> fre;
      ^~~
assistant.cpp:23:3: error: 's' was not declared in this scope
   s[i] = i;
   ^
assistant.cpp:24:14: error: 'fre' was not declared in this scope
   if (!A[i]) fre.insert(i);
              ^~~
assistant.cpp:28:11: error: 'GetRequest' was not declared in this scope
   int v = GetRequest();
           ^~~~~~~~~~
assistant.cpp:29:7: error: 's' was not declared in this scope
   if (s.find(v)!=s.end()){
       ^
assistant.cpp:33:15: error: 'fre' was not declared in this scope
    if (!A[i]) fre.insert(v);
               ^~~
assistant.cpp:34:9: error: 'fre' was not declared in this scope
    else fre.erase(v);
         ^~~
assistant.cpp:37:16: error: 'fre' was not declared in this scope
    int back = *fre.begin();
                ^~~
assistant.cpp:38:4: error: 'PutBack' was not declared in this scope
    PutBack(back);
    ^~~~~~~