using System.Collections.Generic; class Solution { Stack<int> sta1 = new Stack<int>(); Stack<int> sta2 = new Stack<int>(); public void push(int node) { sta1.Push(node); if(sta2.Count == 0 || node <= sta2.Peek()) sta2.Push(node); } public void pop() { int cur = sta1.Pop(); if(cur == sta2.Peek()) sta2.Pop(); } public int top() { return sta1.Peek(); } public int min() { return sta2.Peek(); } }