class Solution {
public:
bool IsPopOrder(vector<int> pushV, vector<int> popV) {
stack<int> r;
int id = 0;
for (int i = 0; i < pushV.size(); i++)
{
if (pushV[i] != popV[id]) r.push(pushV[i]);
else
{
r.push(pushV[i]);</int></int></int>

            while (  !r.empty()&&id<popV.size()&&r.top() == popV[id])
            {
                r.pop();
                id++;
            }
        }
    }
    if (r.empty()) return true;
    else return false;
}

};