输入一串数,输出每个数左侧第一个小于该数的值。
#include<iostream>
using namespace std;
const int N=10010;
int skt[N],tt;
int main()
{
int n;
cin>>n;
while(n--)
{
int x;
cin>>x;
while(tt&&skt[tt]>=x)tt--;//当栈顶大于x时,弹出栈顶
if(tt)cout<<skt[tt]<<endl;
else cout<<-1<<endl;
skt[++tt]=x;
}
}