Проверка, можно ли упорядочить массив с помощью стека
Дан массив чисел 1, 2, 3, ..., n, расположенных в произвольном порядке. Необходимо определить, является ли этот массив стек-сортируемым. Массив A называется стек-сортируемым, если существует способ с помощью дополнительного стека получить массив B, который в конце выполнения алгоритма будет упорядочен по возрастанию. Разрешенные операции следующие:
Забрать первый элемент из A и поместить его на вершину стека.
Снять элемент с вершины стека и добавить его в конец B.
Если после этих операций массив B оказывается отсортирован по возрастанию, значит A является стек-сортируемым.
Входные данные
В первой строке входных данных дано целое число n (1 ≤ n ≤ ).
Во второй строке содержатся n целых чисел (1 ≤ ≤ n).
Выходные данные
Программа должна вывести Yes, если A можно стек-отсортировать, и No в противном случае.