Submission #90604

#TimeUsernameProblemLanguageResultExecution timeMemory
90604MilkiNizovi (COI14_nizovi)C++14
20 / 100
161 ms552 KiB
#include<bits/stdc++.h> using namespace std; #define FOR(i, a, b) for(int i = a; i < b; ++i) #define REP(i, n) FOR(i, 0, n) #define _ << " " << #define sz(x) ((int) x.size()) #define pb(x) push_back(x) typedef long long ll; typedef pair<int, int> point; int a, b; int cmp(int x, int y){ cout << "cmp" _ x _ y << endl; fflush(stdout); int ret; cin >> ret; return ret; } void rev(int x, int y){ if(x == y) return; cout << "reverse" _ x _ y << endl; fflush(stdout); } int main(){ cin >> a >> b; int start = 1, end = a + b, len = a; REP(i, a){ int lo = start + len, hi = end; if(lo >= hi) continue; while(lo < hi){ int mid = (lo + hi + 1) >> 1; int ans = cmp(start, mid); if(ans <= 0) hi = mid - 1; else lo = mid; } if(start >= lo){ assert(a == 0); start ++; len --; continue; } rev(start, lo); rev(lo - len + 1, lo); rev(start, lo - len); len --; start = lo - len + 1; } cout << "end"; fflush(stdout); }
#Verdict Execution timeMemoryGrader output
Fetching results...