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 "cycle.h"
#include <bits/stdc++.h>
using namespace std;
int cnt_jump = 0;
bool my_jump(int x) {
   ++cnt_jump;
   bool res = jump(x);
//   cout << "Salto #" << cnt_jump << " x = " << x << "  res = " << res << endl;
   return res;
}
void escape(int n) {
   if (n == 2) {
      my_jump(1);
      return;
   }
   bool flag = my_jump(0);
   if (!flag) {
      while (true) {
         flag = my_jump(1);
         if (flag) {
            // estoy en el punto medio!!!
            int p;
            if (n % 2 == 0)
               p = n / 2;
            else
               p = n / 2 + 1;
            int dist = n - p;
            my_jump(dist);
            break;
         }
      }
   }
   else {
      while (true) {
         flag = my_jump(1);
         if (!flag) {
            // me pase!!! pero me pase por 1, eso quiere decir que estoy
            // en la habitacion 1
            my_jump(n-1);  // salto n-1 para "regresar" a la habitacion 0
            break;
         }
      }
   }
}
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... |