Submission #478104

#TimeUsernameProblemLanguageResultExecution timeMemory
478104FatihSolakNizovi (COI14_nizovi)C++17
0 / 100
1 ms200 KiB
#include <bits/stdc++.h> using namespace std; int a,b; int ask(int x,int y){ cout << "cmp " << x << " " << y << endl; int ret; cin >> ret; return ret; } void revers(int l,int r){ assert(r <= a+b && l > 0 && l <= r); cout << "rverse " << l << " " << r << endl; } int main(){ cin >> a >> b; int pos = 1; for(int i=1;i<=a && pos < a + b;i++){ int l = pos + a - i + 1, r = a+b; int cnt = -l; if(ask(pos,l) != 1){ pos++; continue; } while(l < r){ int m = (l + r + 1)/2; if(ask(m,pos) == 1){ r = m-1; } else l = m; } cnt += l; revers(pos,l); revers(pos,pos+cnt); revers(pos+cnt+1,l); pos += cnt + 2; } cout << "end" << endl; }
#Verdict Execution timeMemoryGrader output
Fetching results...