#include <climits>
class Solution {
public:
stack<int>q ;
stack<int>minn ;
void push(int value)
{
q.push(value) ;
if(minn.empty())
{
minn.push(value) ;
return ;
}
if(value <= minn.top())
{
minn.push(value) ;
}
}
void pop() {
if(q.top() == minn.top())
{
minn.pop() ;
}
q.pop() ;
}
int top() {
return q.top() ;
}
int min() {
return minn.top() ;
}
};

京公网安备 11010502036488号