#include<bits/stdc++.h>
using namespace std;
#define int long long
struct iid{
int pre,nxt,id,hi;
}j[100018];
bool cmp(idd a,idd b){
return a.hi < b.hi;
}
int n,t;
int pos[100005],ga[100005],gb[100005];
int f[25][100005][2];
int da[25][100005][2],db[25][100005][2];
int la,lb;
int choice(int a,int b,int cnt){
if(!a){
return j[b].id;
}
if(!b){
return j[a].id;
}
if(j[cnt].hi - j[a].hi <= j[b].hi - j[cnt].hi){
return j[a].id;
}
else{
return j[b].id;
}
}
void del(int pos){
if(j[pos].nxt){
j[j[pos].nxt].pre = j[pos].pre;
}
if(j[pos].pre){
j[j[pos].pre].nxt = j[pos].nxt;
}
}
void work(int s,int x){
la = lb = 0;
int k = 0;
for(int i = t;i >= 0;i --){
if(f[i][s][k] && da[i][s][k] + db[i][s][k] <= x){
x -= (da[i][s][k] + db[i][s][k]);
la += da[i][s][k];
lb += db[i][s][k];
if(!i){
k ^= 1;
}
s = f[i][s][k];
}
}
}
signed main(){
cin >> n;
for(int i = 1;i <= n;i ++){
cin >> j[i].hi;
j[i].id = i;
}
sort(j + 1,j + n + 1,cmp);
for(int i = 1;i <= n;i ++){
j[i].pre = i - 1;
j[i].nxt = i + 1;
pos[j[i].id] = i;
}
j[1].pre = j[n].nxt = 0;
for(int i = 1;i < n;i ++){
int p = pos[i];
int p1 = j[i].pre;
int p2 = j[i].nxt;
if(p1 && (j[p].hi - j[p1].hi <= j[p2].hi - j[p].hi || !p2)){
gb[i] = j[p1].id;
ga[i] =
}
}
return 0;
}