Online C++ Compiler

#include <bits/stdc++.h> using namespace std; bool solve(vector<int> &v) { stack<int> stk; int last = 0; for (int i = 0; i < v.size(); i++) { if (!stk.empty()){ int top = stk.top(); while (top == last + 1) { last = last + 1; stk.pop(); if (stk.empty()){ break; } top = stk.top(); } if (stk.empty()) { stk.push(v[i]); }else{ top = stk.top(); if (v[i] < top){ stk.push(v[i]); }else{ return false; } } }else{ stk.push(v[i]); } } return true; } main(){ vector<int> v = {8, 6, 5, 3, 1}; cout << solve(v); }