Codeforces Round 208 (Div. 2) |
---|
Закончено |
Скоро у Димы день рождения! Большой праздник! Сережа подарит Диме свое отсутствие в комнате и не будет мешать Диме и Инне праздновать день рождения. Инна подарит Диме стек, очередь и дек.
Своим подарком Инна хочет проверить, насколько Дима хороший программист. Для этого она будет поочередно давать Диме команды. Команды бывают двух типов:
Каждый раз, когда Дима выполняет команду второго типа, Инна целует Диму некоторое число (возможно, ноль) раз. Дима знает Инну как облупленную, он уверен, что это число равно сумме извлеченных из контейнеров чисел на данной операции.
Как уже было сказано, Дима знает Инну как облупленную, ему известно, какие команды Инна будет давать Диме и в каком порядке. Помогите Диме найти стратегию, используя которую, он получит как можно больше поцелуев на свой день рождения!
Первая строка содержит целое число n (1 ≤ n ≤ 105) — количество команд Инны. Далее следует n строк, описывающих команды Инны. Каждая строка содержит целое число:
Каждой команде из входных данных должна соответствовать одна строка выходных данных — действие Димы.
Для команды первого типа (добавление) выведите одну из строк в соответствии с выбором Димы:
Для команды второго типа выведите сначала целое число k (0 ≤ k ≤ 3), обозначающее количество операций извлечения, затем выведите k слов разделенных пробелом. Слова могут быть:
Выведенные операции не должны извлекать чисел из пустых контейнеров. А также должны извлекать числа из разных контейнеров.
Выведенная последовательность действий должна приводить к максимальному количеству поцелуев. Если существует несколько последовательностей действий, приводящих к максимальному количеству поцелуев, разрешается вывести любую из них.
10
0
1
0
1
2
0
1
2
3
0
0
pushStack
1 popStack
pushStack
pushQueue
2 popStack popQueue
pushStack
pushQueue
pushFront
3 popStack popQueue popFront
4
1
2
3
0
pushStack
pushQueue
pushFront
3 popStack popQueue popFront
Название |
---|