#include <bits/stdc++.h>
#define int long long
using namespace std;
const int N = 1e5 + 5;
int pre[N];
int res;
bool sorted(int x, int y) {
return pre[y] - pre[x - 1] == 0;
}
void f(int x, int y) {
if (sorted(x, y)) {
res = max(res, y - x + 1);
return;
}
if (y == x + 1) {
res = max(1LL, res);
return;
}
f(x, (x + y) / 2);
f((x + y) / 2 + 1, y);
}
signed main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
int n;
cin >> n;
int a[n + 1];
for (int i = 1; i <= n; ++i) cin >> a[i];
pre[0] = pre[1] = 0;
for (int i = 2; i <= n; ++i) pre[i] = pre[i - 1] + (a[i] < a[i - 1]);
f(1, n);
cout << res;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgaW50IGxvbmcgbG9uZwp1c2luZyBuYW1lc3BhY2Ugc3RkOwpjb25zdCBpbnQgTiA9IDFlNSArIDU7CmludCBwcmVbTl07CmludCByZXM7Cgpib29sIHNvcnRlZChpbnQgeCwgaW50IHkpIHsKCXJldHVybiBwcmVbeV0gLSBwcmVbeCAtIDFdID09IDA7Cn0KCnZvaWQgZihpbnQgeCwgaW50IHkpIHsKCWlmIChzb3J0ZWQoeCwgeSkpIHsKCQlyZXMgPSBtYXgocmVzLCB5IC0geCArIDEpOwoJCXJldHVybjsKCX0KCWlmICh5ID09IHggKyAxKSB7CgkJcmVzID0gbWF4KDFMTCwgcmVzKTsKCQlyZXR1cm47Cgl9CglmKHgsICh4ICsgeSkgLyAyKTsKCWYoKHggKyB5KSAvIDIgKyAxLCB5KTsKfQoKc2lnbmVkIG1haW4oKSB7Cglpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKDApOwoJY2luLnRpZSgwKTsKCWludCBuOwoJY2luID4+IG47CglpbnQgYVtuICsgMV07Cglmb3IgKGludCBpID0gMTsgaSA8PSBuOyArK2kpIGNpbiA+PiBhW2ldOwoJcHJlWzBdID0gcHJlWzFdID0gMDsKCWZvciAoaW50IGkgPSAyOyBpIDw9IG47ICsraSkgcHJlW2ldID0gcHJlW2kgLSAxXSArIChhW2ldIDwgYVtpIC0gMV0pOwoJZigxLCBuKTsKCWNvdXQgPDwgcmVzOwoJcmV0dXJuIDA7Cn0=