Submission #137372

#TimeUsernameProblemLanguageResultExecution timeMemory
137372nekiUnscrambling a Messy Bug (IOI16_messy)C++14
Compilation error
0 ms0 KiB
#include "messy.h" #include <bits/stdc++.h> using namespace std; int n; vector<int> ans; void set(int l, int r){ if(l+1==r) return; string ss(n, '1'), can(r-l, '0'); loop(i, l, (l+r)/2){ auto ts=ss;ts.replace(l, can.length(), can); ts[i]='1'; add_element(ts); } set(l, (l+r)/2);set((l+r)/2, r); } void guess(int l, int r){ if(l+1==r) return; string ss(n, '1'); loop(i, l, r) ss[ans[i]]='0'; vector<int> le, re; loop(i, l, r){ auto ts=ss; ts[ans[i]]='1'; if(check_element(ts)) le.push_back(ans[i]); else re.push_back(ans[i]); } loop(i, l, (l+r)/2) ans[i]=le[i-l]; loop(i, (l+r)/2, r) ans[i]=re[i-(l+r)/2]; guess(l, (l+r)/2);guess((l+r)/2, r); } vector<int> restore_permutation(int N, int w, int r) { n=N; set(0, n) compile_set(); ans.resize(n); loop(i, 0, n) ans[i]=i; guess(0, n); return ans; }

Compilation message (stderr)

messy.cpp: In function 'void set(int, int)':
messy.cpp:12:10: error: 'i' was not declared in this scope
     loop(i, l, (l+r)/2){
          ^
messy.cpp:12:5: error: 'loop' was not declared in this scope
     loop(i, l, (l+r)/2){
     ^~~~
messy.cpp:12:5: note: suggested alternative: 'logl'
     loop(i, l, (l+r)/2){
     ^~~~
     logl
messy.cpp:17:5: error: reference to 'set' is ambiguous
     set(l, (l+r)/2);set((l+r)/2, r);
     ^~~
messy.cpp:9:6: note: candidates are: void set(int, int)
 void set(int l, int r){
      ^~~
In file included from /usr/include/c++/7/set:61:0,
                 from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:87,
                 from messy.cpp:3:
/usr/include/c++/7/bits/stl_set.h:93:11: note:                 template<class _Key, class _Compare, class _Alloc> class std::set
     class set
           ^~~
messy.cpp:17:21: error: reference to 'set' is ambiguous
     set(l, (l+r)/2);set((l+r)/2, r);
                     ^~~
messy.cpp:9:6: note: candidates are: void set(int, int)
 void set(int l, int r){
      ^~~
In file included from /usr/include/c++/7/set:61:0,
                 from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:87,
                 from messy.cpp:3:
/usr/include/c++/7/bits/stl_set.h:93:11: note:                 template<class _Key, class _Compare, class _Alloc> class std::set
     class set
           ^~~
messy.cpp: In function 'void guess(int, int)':
messy.cpp:23:10: error: 'i' was not declared in this scope
     loop(i, l, r) ss[ans[i]]='0';
          ^
messy.cpp:23:5: error: 'loop' was not declared in this scope
     loop(i, l, r) ss[ans[i]]='0';
     ^~~~
messy.cpp:23:5: note: suggested alternative: 'logl'
     loop(i, l, r) ss[ans[i]]='0';
     ^~~~
     logl
messy.cpp: In function 'std::vector<int> restore_permutation(int, int, int)':
messy.cpp:38:5: error: reference to 'set' is ambiguous
     set(0, n)
     ^~~
messy.cpp:9:6: note: candidates are: void set(int, int)
 void set(int l, int r){
      ^~~
In file included from /usr/include/c++/7/set:61:0,
                 from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:87,
                 from messy.cpp:3:
/usr/include/c++/7/bits/stl_set.h:93:11: note:                 template<class _Key, class _Compare, class _Alloc> class std::set
     class set
           ^~~
messy.cpp:41:10: error: 'i' was not declared in this scope
     loop(i, 0, n) ans[i]=i;
          ^
messy.cpp:41:5: error: 'loop' was not declared in this scope
     loop(i, 0, n) ans[i]=i;
     ^~~~
messy.cpp:41:5: note: suggested alternative: 'logl'
     loop(i, 0, n) ans[i]=i;
     ^~~~
     logl