fork download
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int main() {
  6. int n;
  7. while (cin >> n) {
  8. int seq[n], num = 1, stack[n], stacksize = 0;
  9.  
  10. for (int i = 0; i < n; ++i) {
  11. cin >> seq[i];
  12. stack[i] = 0;
  13. }
  14.  
  15. for (int i = 0; i < n; ++i) {
  16. while (stacksize == 0 || stack[stacksize - 1] < seq[i])
  17. stack[stacksize++] = num++;
  18. if (stack[stacksize - 1] == seq[i])
  19. stack[stacksize--] = 0;
  20. }
  21.  
  22. stacksize == 0 ? cout << "YES" : cout << "NO";
  23. }
  24. return 0;
  25. }
Success #stdin #stdout 0s 4564KB
stdin
Standard input is empty
stdout
Standard output is empty