Advertisement
tuki2501

abc188_c

Jan 18th, 2021
717
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.58 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. #define int long long
  5.  
  6. const int N = 2000000;
  7.  
  8. int a[N];
  9.  
  10. int f(int l, int r, int b) {
  11.   if (l + 1 < r) {
  12.     int m = (l + r) / 2;
  13.     l = f(l, m, 0);
  14.     r = f(m + 1, r, 0);
  15.   }
  16.   if (b == 0) {
  17.     if (a[l] > a[r]) return l;
  18.     return r;
  19.   }
  20.   else {
  21.     if (a[l] > a[r]) return r;
  22.     return l;
  23.   }
  24. }
  25.  
  26. signed main() {
  27.   // freopen("in" , "r", stdin );
  28.   cin.tie(0)->sync_with_stdio(0);
  29.   int n; cin >> n;
  30.   n = (1 << n);
  31.   for (int i = 1; i <= n; i++) {
  32.     cin >> a[i];
  33.   }
  34.   cout << f(1, n, 1) << '\n';
  35. }
  36.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement