1, 2, ..., limit поступают по одному, по возрастанию. У вас есть пустой стек и две операции:
- "Push" — взять следующее число из потока и положить его на вершину стека;
- "Pop" — снять число с вершины стека.
Нужно, чтобы содержимое стека снизу вверх совпало со строго возрастающим массивом wanted. Как только это произошло, операции прекращаются и новые числа из потока не читаются.
Верните последовательность операций, которая приводит к wanted.wanted=[2, 3], limit=4 → ['Push', 'Pop', 'Push', 'Push']
Берём 1 и сразу снимаем его, затем кладём 2 и 3. Стек равен [2, 3] — останавливаемся, число 4 не читаем.
wanted=[1, 4], limit=4 → ['Push', 'Push', 'Pop', 'Push', 'Pop', 'Push']
1 остаётся, 2 и 3 кладутся и тут же снимаются, затем кладётся 4.
wanted=[1, 2, 3], limit=3 → ['Push', 'Push', 'Push']
wanted строго возрастаетwanted=[2, 3], limit=4
['Push', 'Pop', 'Push', 'Push']
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 115 тестов на сервере, включая скрытые.