STL с объектами пользовательских типов, перегрузка операций 3

Выполнен
Заказ
5713478
Раздел
Программирование
Тип работы
Антиплагиат
Не указан
Срок сдачи
5 Дек 2023 в 22:55
Цена
Договорная
Блокировка
10 дней
Размещен
1 Дек 2023 в 12:37
Просмотров
57
Описание работы

Харитон любит мороженое. К новому сезону производитель мороженого, продукцию которого Харитон особенно любит, выпустил много новых сортов (не забывая, впрочем, о старых и проверенных временем).

Каждому сорту мороженого Харитон назначил свой «рейтинг». Чем больше этот рейтинг, тем более вкусным является мороженое с точки зрения Харитона.

Харитон обычно покупает сразу две порции мороженого. Одну порцию он съедает в день покупки, а другую — в один из следующих дней. Так что в его холодильнике может храниться некоторое количество порций.

Каждый день в киоске, в котором Харитон покупает мороженое, какое-то мороженое назначают «мороженым дня» и продают со скидкой. Поэтому, проходя мимо киоска, Харитон всегда интересуется, какое мороженое можно купить немного дешевле обычного.

Если рейтинг «мороженого дня» не меньше, чем рейтинг самого вкусного мороженого, хранящегося в холодильнике Харитона, он купит две порции этого мороженого, одну съест, а вторую положит в холодильник. Если же рейтинг «мороженого дня» меньше, Харитон не станет его покупать, а съест самое вкусное мороженое из своего холодильника.

Ваша задача — по заданной информации об n днях определить, какое максимальное количество порций мороженого одновременно оказывалось в холодильнике Харитона на протяжении этих n дней, а также какое мороженое Харитон покупал чаще всего.

Входные данные

В первой строке содержится целое число n (1≤n≤3⋅10^5) — количество дней, для которых имеется информация о мороженом.

В каждой из следующих n строк содержится информация о «мороженом дня» в соответствующий день: наименование сорта мороженого sj и (через пробел) его рейтинг rj с точки зрения Харитона (j=1,2,…,n)

Наименование сорта мороженого sj — непустая строка из строчных латинских букв, цифр и нижнего подчёркивания, начинающаяся с буквы и имеющая длину не более 30 символов.

Рейтинг мороженого rj является целым неотрицательным числом, не превосходящим 10^6.

Гарантируется, что рейтинг сорта мороженого не меняется: если некоторое наименование сорта встречается в данных несколько раз, оно всегда имеет один и тот же рейтинг.

Выходные данные

В первой строке выведите целое число m— максимальное количество порций мороженого, которое одновременно оказывалось в холодильнике Харитона.

Во второй строке выведите целые числа v и k — максимальное количество раз, которое Харитон покупал мороженое одного и того же сорта, и количество сортов мороженого, которые Харитон покупал чаще всего.

Далее выведите k строк, в каждой строке содержится по одному наименованию сорта мороженого, которое Харитон покупал чаще всего. Наименования сортов выводите в лексикографическом (алфавитном) порядке.

Примечание

Поясним приведённый пример.

В день #1 Харитон купит две порции клубничного мороженого, одно съест, а второе положит в холодильник. В этот день ему не с чем сравнивать мороженое, так что он купит мороженое с любым рейтингом. А пока запомним, что самое вкусное (и единственное) мороженое в холодильнике Харитона имеет рейтинг 3.

В день #2 Харитон купит две порции ванильного пломбира с рейтингом 5. Одну порцию он съест, а вторая отправится в холодильник. Теперь именно это мороженое будет самым вкусным в холодильнике Харитона. Всего в холодильнике хранится 2 порции мороженого, и пока это максимальный «запас» Харитона.

...

Нужна такая же работа?
  • Разместите заказ
  • Выберите исполнителя
  • Получите результат
Гарантия на работу 1 год
Средний балл 4.96
Стоимость Назначаете сами
Эксперт Выбираете сами
Уникальность работы от 70%
Время выполнения заказа:
29 минут
Выполнен в срок
Отзыв о выполненном заказе
Отзыв эксперта о заказе
Нужна аналогичная работа?
Оформи быстрый заказ и узнай стоимость
Гарантированные бесплатные доработки
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Темы журнала
Показать ещё
Прямой эфир