#include<bits/stdc++.h>
using namespace std;
#define int long long
#define endl '\n'
const int N=5e5+10;
int a[N],tt=0;
signed main()
{
ios::sync_with_stdio(0);
cin.tie(0);cout.tie(0);
int n;
cin>>n;
for(int i=0;i<n;i++)
{ int x;
cin>>x;
while(tt!=0 && a[tt]>=x ) tt--;//比x大的数是永远都不会用到的
if(tt==0) cout<<"-1"<<" ";//如果为空 说明无小于x的数
else cout<<a[tt]<<" ";
a[++tt]=x;
}
}
单调栈(模板)
最新推荐文章于 2024-08-21 18:53:45 发布