#include <iostream>
#include <bits/stdc++.h>
using namespace std;
int main() {
int n ; cin>>n;
vector<int>arr(n);
for(int i = 0 ; i<n;i++){
cin>>arr[i];
}
stack<int>s;
vector<int>nge(n,0);
for(int i = 0 ; i<n;i++){
while(!s.empty() && arr[i]<0 && abs(arr[i])>abs(arr[s.top()])){
nge[s.top()]=i;
s.pop();
}
if(arr[i]>0) s.push(i);
}
// your code goes here
for(int i = 0 ; i<n;i++)cout<<nge[i]<<" ";
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBtYWluKCkgewoJaW50IG4gOyBjaW4+Pm47Cgl2ZWN0b3I8aW50PmFycihuKTsKCWZvcihpbnQgaSA9IDAgOyBpPG47aSsrKXsKCQljaW4+PmFycltpXTsKCX0KCXN0YWNrPGludD5zOwogICAgdmVjdG9yPGludD5uZ2UobiwwKTsKCWZvcihpbnQgaSA9IDAgOyBpPG47aSsrKXsKICAgICAgICAgICAgd2hpbGUoIXMuZW1wdHkoKSAmJiBhcnJbaV08MCAmJiBhYnMoYXJyW2ldKT5hYnMoYXJyW3MudG9wKCldKSl7CiAgICAgICAgICAgICAgICBuZ2Vbcy50b3AoKV09aTsKICAgICAgICAgICAgICAgIHMucG9wKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYoYXJyW2ldPjApIHMucHVzaChpKTsKICAgICAgICAgICAgCiAgICAgICAgfQoJLy8geW91ciBjb2RlIGdvZXMgaGVyZQoJZm9yKGludCBpID0gMCA7IGk8bjtpKyspY291dDw8bmdlW2ldPDwiICI7CglyZXR1cm4gMDsKfQ==