EduBrick

F. Своё мультимножество

2000 мс · 256 МБ · всё или ничего

Промоделируйте работу мультимножества — множества, в котором один и тот же элемент может лежать несколько раз.

  • insert x — добавить ещё одно вхождение xx; вывести ok;
  • erase x — удалить одно вхождение xx; вывести ok, даже если вхождений не было;
  • erase_all x — удалить все вхождения xx; вывести, сколько их было удалено;
  • count x — вывести количество вхождений xx;
  • size — вывести общее количество элементов с учётом кратности;
  • min и max — вывести наименьший или наибольший элемент, либо none, если мультимножество пусто;
  • exit — вывести bye и завершить работу.

Формат ввода

Команды, по одной на строке, не более 10510^5 штук. Последняя команда — exit.

Все числа целые и по модулю не превосходят 10910^9.

Формат вывода

Протокол работы: по одной строке на каждую команду, кроме insert и erase, на которые выводится ok.

Примеры

ввод
insert 5
insert 5
count 5
size
erase 5
count 5
erase_all 5
count 5
min
exit
вывод
ok
ok
2
2
ok
1
1
0
none
bye
Войдите, чтобы отправлять решения.