Обратите внимание на низкое ограничение по времени. Решения на языке Python стоит засылать под PyPy 3-64.
Приветствуем начинающих воров! Сегодня вам предстоит ограбить кабинет номер $$$25$$$. В снаряжении мы вам дадим лишь небольшой рюкзак, потому что ценного в месте назначения не сильно много. Однако даже такие вещи могут пригодиться Штабу! Да, рюкзак, конечно, староват, но может вместить много полезного и нужного Штабу! Периодически вам будут поступать запросы от базы. Запросы могут быть таковыми:
В первой строке вводятся два числа $$$q$$$ и $$$g$$$ ($$$1 \le q \le 10^4$$$, $$$0 \le g \le 10$$$) — количество запросов от базы и номер группы тестов.
В следующих $$$q$$$ строках вводится запрос в соответствующем формате:
Для каждого запроса типа ? от базы выведите максимальную стоимость слитков, которую можно оставить.
| № | Доп. ограничения | Баллы | Необх. группы | Комментарий | |
| $$$q$$$ | $$$W$$$ | ||||
| $$$0$$$ | — | — | — | — | Тесты из условия |
| $$$1$$$ | $$$q \le 16$$$ | — | $$$10$$$ | $$$0$$$ | — |
| $$$2$$$ | $$$q \le 32$$$ | — | $$$12$$$ | $$$0-1$$$ | — |
| $$$3$$$ | $$$q \le 300$$$ | $$$W \le 200$$$ | $$$7$$$ | — | — |
| $$$4$$$ | — | — | $$$7$$$ | — | Все запросы типа $$$1$$$ и $$$2$$$ идут до всех запросов типа $$$3$$$ |
| $$$5$$$ | — | — | $$$8$$$ | $$$4$$$ | Все запросы типа $$$2$$$ идут до всех запросов типа $$$3$$$ |
| $$$6$$$ | — | — | $$$11$$$ | $$$4$$$ | Все запросы типа $$$1$$$ идут до всех запросов типа $$$3$$$ |
| $$$7$$$ | — | — | $$$9$$$ | — | Все ценности на удаление идут в обратном порядке, что на добавление |
| $$$8$$$ | — | — | $$$12$$$ | — | Все ценности на удаление идут в том же порядке, что и на добавление |
| $$$9$$$ | $$$q \le 2000$$$ | — | $$$8$$$ | $$$0-3$$$ | — |
| $$$10$$$ | — | — | $$$16$$$ | $$$0-9$$$ | — |
10 0+ 5+ 6+ 1+ 2- 2? 12? 7+ 2- 5? 10
12 7 9
14 0+ 1+ 1+ 1? 5? 4? 3? 2+ 2+ 2? 100- 1? 100- 1? 100
3 3 3 2 7 6 5