根据题解的思路实现
#include <climits>
#include <stack>
class Solution {
public:
    void push(int value) {
        if(stack.empty()){
            stack1.push(value);
        }
        else{
            if(value<stack1.top()) stack1.push(value);
            else stack1.push(stack1.top());
        }
        
        stack.push(value);
    }
    void pop() {
        std::cout<<stack.top()<<" ";
        stack.pop();
        stack1.pop();
    }
    int top() {
        return stack.top();
    }
    int min() {
        
        return stack1.top();
    }
    private:
    std::stack<int> stack;
    std::stack<int> stack1;
};