#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair<int, int> ii;
const int INF = 1e9;
const ll LINF = 1e18;
const int N = 2e5 + 5;
int n;
int a[N];
int l[N]; // l[i] = phần tử gần nhất bên trái < a[i]
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
cin >> n;
for (int i = 1; i <= n; i++) cin >> a[i];
// Duyệt từ trái sang và duy trì một stack
// Khi xét đến i, gọi j là phần tử ở đỉnh của stack
// Nếu a[j] >= a[i] thì việc giữ j lại không có ý nghĩa gì cả
// vì i vừa gần với những chỉ số phía sau hơn đồng thời a[i] cũng "tốt" hơn a[j]
// nên trường hợp này ta pop j ra khỏi stack
// Lặp lại đến khi stack rỗng hoặc a[j] < a[i]
// Lúc này j chính là đáp án l[i] cần tìm
// - Note: Điều này cũng có thể diễn đạt lại theo một cách khác là:
// - Ở mỗi thời điểm ta luôn giữ cho stack giảm nghiêm ngặt tính từ đỉnh xuống
vector<int> st;
for (int i = 1; i <= n; i++) {
while (!st.empty() && a[st.back()] >= a[i]) st.pop_back();
l[i] = st.empty() ? 0 : st.back();
st.push_back(i);
}
for (int i = 1; i <= n; i++) cout << l[i] << ' ';
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+IAoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsgIAoKdHlwZWRlZiBsb25nIGxvbmcgbGw7ICAKdHlwZWRlZiBwYWlyPGludCwgaW50PiBpaTsgIAoKY29uc3QgaW50IElORiA9IDFlOTsgIApjb25zdCBsbCBMSU5GID0gMWUxODsgIAoKY29uc3QgaW50IE4gPSAyZTUgKyA1OyAKCmludCBuOyAgCmludCBhW05dOyAKCmludCBsW05dOyAvLyBsW2ldID0gcGjhuqduIHThu60gZ+G6p24gbmjhuqV0IGLDqm4gdHLDoWkgPCBhW2ldCgppbnQgbWFpbigpIHsKCWlvczo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsgCgljaW4udGllKG51bGxwdHIpOyAJCgljaW4gPj4gbjsgCglmb3IgKGludCBpID0gMTsgaSA8PSBuOyBpKyspIGNpbiA+PiBhW2ldOyAKCgkvLyBEdXnhu4d0IHThu6sgdHLDoWkgc2FuZyB2w6AgZHV5IHRyw6wgbeG7mXQgc3RhY2sKCS8vIEtoaSB4w6l0IMSR4bq/biBpLCBn4buNaSBqIGzDoCBwaOG6p24gdOG7rSDhu58gxJHhu4luaCBj4bunYSBzdGFjawoJLy8gTuG6v3UgYVtqXSA+PSBhW2ldIHRow6wgdmnhu4djIGdp4buvIGogbOG6oWkga2jDtG5nIGPDsyDDvSBuZ2jEqWEgZ8OsIGPhuqMKCS8vIHbDrCBpIHbhu6thIGfhuqduIHbhu5tpIG5o4buvbmcgY2jhu4kgc+G7kSBwaMOtYSBzYXUgaMahbiDEkeG7k25nIHRo4budaSBhW2ldIGPFqW5nICJ04buRdCIgaMahbiBhW2pdCgkvLyBuw6puIHRyxrDhu51uZyBo4bujcCBuw6B5IHRhIHBvcCBqIHJhIGto4buPaSBzdGFjawoJLy8gTOG6t3AgbOG6oWkgxJHhur9uIGtoaSBzdGFjayBy4buXbmcgaG/hurdjIGFbal0gPCBhW2ldCgkvLyBMw7pjIG7DoHkgaiBjaMOtbmggbMOgIMSRw6FwIMOhbiBsW2ldIGPhuqduIHTDrG0KCS8vIC0gTm90ZTogxJBp4buBdSBuw6B5IGPFqW5nIGPDsyB0aOG7gyBkaeG7hW4gxJHhuqF0IGzhuqFpIHRoZW8gbeG7mXQgY8OhY2gga2jDoWMgbMOgOgoJLy8gLSDhu54gbeG7l2kgdGjhu51pIMSRaeG7g20gdGEgbHXDtG4gZ2nhu68gY2hvIHN0YWNrIGdp4bqjbSBuZ2hpw6ptIG5n4bq3dCB0w61uaCB04burIMSR4buJbmggeHXhu5FuZwoJdmVjdG9yPGludD4gc3Q7ICAKCWZvciAoaW50IGkgPSAxOyBpIDw9IG47IGkrKykgewoJCXdoaWxlICghc3QuZW1wdHkoKSAmJiBhW3N0LmJhY2soKV0gPj0gYVtpXSkgc3QucG9wX2JhY2soKTsgICAKCQlsW2ldID0gc3QuZW1wdHkoKSA/IDAgOiBzdC5iYWNrKCk7ICAgCgkJc3QucHVzaF9iYWNrKGkpOyAKCX0KCglmb3IgKGludCBpID0gMTsgaSA8PSBuOyBpKyspIGNvdXQgPDwgbFtpXSA8PCAnICc7IAp9