class Solution {
public:
bool VerifySquenceOfBST(vector<int> sequence) {
bool flag=false;
stack<int> result;
vector<int> test=sequence;
int rank=0;
sort(test.begin(),test.end());
if(sequence.size()==0){
return flag;
}
for(int i=0;i<=test.size()-1;i+=1){
while(!result.empty()&&result.top()==sequence[rank]){
result.pop();
rank+=1;
}
result.push(test[i]);
}
int len=result.size()-1;
for(int i=0;i<=len;i+=1){
if(result.top()==sequence[rank]){
result.pop();
rank+=1;
}
}
if(result.empty()){
flag=true;
}
return flag;
}
};