Submission #1311636

#TimeUsernameProblemLanguageResultExecution timeMemory
1311636PlayVoltzTeams (IOI15_teams)C++20
Compilation error
0 ms0 KiB
#define pii pair<int,int> #define mp make_pair #define pb push_back #define fi first #define se second int n; vector<vector<int> > vect; struct node{ int s, e, m; vector<int> val; node *l, *r; node(int S, int E){ s = S, e = E, m = (s+e)/2; if (s!=e){ l = new node(s, m); r = new node(m+1, e); merge(l->val.begin(), l->val.end(), r->val.begin(), r->val.end(), back_inserter(val)); } else val=vect[s], sort(val.begin(), val.end()); } int query(int left, int right, int v){ if (left>right)return 0; if (s==left && e==right)return val.size()-(lower_bound(val.begin(), val.end(), v)-val.begin()); if (right<=m)return l->query(left, right, v); else if (left>m)return r->query(left, right, v); else return l->query(left, m, v)+r->query(m+1, right, v); } }*st; void init(int N, int A[], int B[]){ n=N; vect.resize(n+1); for (int i=0; i<n; ++i)vect[A[i]].pb(B[i]); st = new node(1, n); } int can(int m, int ord[]){ sort(ord, ord+m); int extra=0; for (int i=0, prev=0; i<m; ++i){ if (i!=m-1){ int low=prev, high=ord[i]+1, res=0; while (low+1<high){ int mid=(low+high)/2; if (st->query(prev+1, mid, ord[i])<ord[i]+extra)low=mid, res=st->query(prev+1, mid, ord[i]); else high=mid; } if (low==ord[i])return 0; extra=extra+ord[i]-res; extra=max(0, extra-st->query(low+1, low+1, ord[i])+st->query(low+1, low+1, ord[i+1])); prev=low; } else{ if (st->query(prev+1, ord[i], ord[i])<ord[i]+extra)return 0; } } return 1; }

Compilation message (stderr)

teams.cpp:8:8: error: 'vector' was not declared in this scope
    8 | vector<vector<int> > vect;
      |        ^~~~~~
teams.cpp:8:8: error: 'vector' was not declared in this scope
teams.cpp:8:8: error: 'vector' was not declared in this scope
teams.cpp:8:8: error: 'vector' was not declared in this scope
teams.cpp:8:8: error: 'vector' was not declared in this scope
teams.cpp:8:8: error: 'vector' was not declared in this scope
teams.cpp:8:8: error: 'vector' was not declared in this scope
teams.cpp:8:8: error: 'vector' was not declared in this scope
teams.cpp:8:8: error: 'vector' was not declared in this scope
teams.cpp:8:1: error: 'vector' does not name a type
    8 | vector<vector<int> > vect;
      | ^~~~~~
teams.cpp:12:9: error: 'vector' does not name a type
   12 |         vector<int> val;
      |         ^~~~~~
teams.cpp: In constructor 'node::node(int, int)':
teams.cpp:20:34: error: 'struct node' has no member named 'val'
   20 |                         merge(l->val.begin(), l->val.end(), r->val.begin(), r->val.end(), back_inserter(val));
      |                                  ^~~
teams.cpp:20:50: error: 'struct node' has no member named 'val'
   20 |                         merge(l->val.begin(), l->val.end(), r->val.begin(), r->val.end(), back_inserter(val));
      |                                                  ^~~
teams.cpp:20:64: error: 'struct node' has no member named 'val'
   20 |                         merge(l->val.begin(), l->val.end(), r->val.begin(), r->val.end(), back_inserter(val));
      |                                                                ^~~
teams.cpp:20:80: error: 'struct node' has no member named 'val'
   20 |                         merge(l->val.begin(), l->val.end(), r->val.begin(), r->val.end(), back_inserter(val));
      |                                                                                ^~~
teams.cpp:20:105: error: 'val' was not declared in this scope
   20 |                         merge(l->val.begin(), l->val.end(), r->val.begin(), r->val.end(), back_inserter(val));
      |                                                                                                         ^~~
teams.cpp:20:91: error: 'back_inserter' was not declared in this scope
   20 |                         merge(l->val.begin(), l->val.end(), r->val.begin(), r->val.end(), back_inserter(val));
      |                                                                                           ^~~~~~~~~~~~~
teams.cpp:20:25: error: 'merge' was not declared in this scope
   20 |                         merge(l->val.begin(), l->val.end(), r->val.begin(), r->val.end(), back_inserter(val));
      |                         ^~~~~
teams.cpp:22:22: error: 'val' was not declared in this scope
   22 |                 else val=vect[s], sort(val.begin(), val.end());
      |                      ^~~
teams.cpp:22:26: error: 'vect' was not declared in this scope
   22 |                 else val=vect[s], sort(val.begin(), val.end());
      |                          ^~~~
teams.cpp:22:35: error: 'sort' was not declared in this scope; did you mean 'short'?
   22 |                 else val=vect[s], sort(val.begin(), val.end());
      |                                   ^~~~
      |                                   short
teams.cpp: In member function 'int node::query(int, int, int)':
teams.cpp:26:48: error: 'val' was not declared in this scope
   26 |                 if (s==left && e==right)return val.size()-(lower_bound(val.begin(), val.end(), v)-val.begin());
      |                                                ^~~
teams.cpp:26:60: error: 'lower_bound' was not declared in this scope
   26 |                 if (s==left && e==right)return val.size()-(lower_bound(val.begin(), val.end(), v)-val.begin());
      |                                                            ^~~~~~~~~~~
teams.cpp: In function 'void init(int, int*, int*)':
teams.cpp:35:9: error: 'vect' was not declared in this scope
   35 |         vect.resize(n+1);
      |         ^~~~
teams.cpp: In function 'int can(int, int*)':
teams.cpp:41:9: error: 'sort' was not declared in this scope; did you mean 'short'?
   41 |         sort(ord, ord+m);
      |         ^~~~
      |         short
teams.cpp:53:31: error: 'max' was not declared in this scope
   53 |                         extra=max(0, extra-st->query(low+1, low+1, ord[i])+st->query(low+1, low+1, ord[i+1]));
      |                               ^~~