class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
* 栈排序
* @param a int整型vector 描述入栈顺序
* @return int整型vector
*/
vector<int> solve(vector<int>& a) {
int n = a.size();
vector<bool> mp(n + 5, false);
vector<int> ret;
stack<int> st;
for(auto i : a)
{
mp[i] = true;
st.push(i);
while(mp[n]) n--;
while(!st.empty() && st.top() > n)
{
ret.push_back(st.top());
st.pop();
}
}
return ret;
}
};



京公网安备 11010502036488号