# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
706264 | vjudge1 | Nizovi (COI14_nizovi) | C++17 | 859 ms | 328 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#include <array>
#define all(v) (v.begin()), (v.end())
#define setall(a, val) for(auto& x : a) x = val
#define ll long long
clock_t start_time;
double get_time() { return (double)(clock() - start_time) / CLOCKS_PER_SEC; }
void init() {
#ifndef ONLINE_JUDGE:
FILE* _ = freopen("in.txt", "r", stdin);
start_time = clock();
#endif
}
const ll MOD = 1e9 + 7;
const ll N = 5e3 + 7;
const ll M = 1e2 + 7;
using namespace std;
//####################################################################################
int main() {
//ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); srand(time(0)); init();
int a, b;
cin >> a >> b;
int n = a + b;
for (int i = a + 1; i <= n; i++) {
int l = 1, r = i - 1, idx = -1;
while (l <= r) {
int m = (l + r) / 2;
cout << "cmp " << i << ' ' << m << endl;
int x;
cin >> x;
if (x == 0) {
idx = m;
break;
}
if (x == 1)
l = m + 1, idx = m;
else
r = m - 1;
}
idx++;
if (idx != 0) {
if(idx < i)
cout << "reverse " << idx << ' ' << i << endl;
if(idx + 1 < i)
cout << "reverse " << idx + 1 << ' ' << i << endl;
}
}
cout << "end" << endl;
cerr << get_time() << "s" << endl;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |