На с++. Харитон был огорчён. Конечно, то, что он покупал мороженое дешевле его обычной цены, было неплохо. Но в его холодильнике накапливалось мороженое, которое он не считал достаточно вкусным. Поэтому Харитон решил несколько изменить стратегию покупок. Теперь она выглядит следующим образом.
Харитон не станет покупать мороженое в двух случаях:
Если в холодильнике имеется мороженое, которое лежит там уже d дней. В этом случае Харитон съест в этот день именно это мороженое.
Если никакое мороженое не лежит в холодильнике d дней, но рейтинг «мороженого дня» меньше, чем рейтинг самого вкусного мороженого, которое есть у Харитона в холодильнике. В этом случае Харитон съест в этот день самое вкусное мороженое из своего холодильника. Если в холодильнике есть несколько порций мороженого с одинаковым рейтингом, Харитон съест то, которое купил последним (оно ближе лежит:)) Если же рейтинг «мороженого дня» не меньше, чем рейтинг самого вкусного мороженого, хранящегося в холодильнике Харитона, и, кроме того, никакое мороженое в холодильнике не лежит уже d дней, Харитон купит две порции «мороженого дня», одну съест, а вторую положит в холодильник.
Ваша задача — по заданной информации об n днях определить:. сколько раз Харитон отказывался от покупки мороженого, рейтинг которого был выше, чем хотя бы у одного мороженого, имевшегося в тот момент в холодильнике; максимальное количество дней, которое порция мороженого провела в холодильнике Харитона, и количество таких порций; количество сортов мороженого, порции которого пробыли в холодильнике максимальное количество дней, и вывести список этих сортов в лексикографическом (алфавитном) порядке.
Входные данные
В первой строке содержатся целые числа n и d (1≤n≤3⋅105,1≤d≤105) — количество дней, для которых имеется информация о мороженом, и количество дней, в течение которого Харитон считает нахождение мороженого в холодильнике допустимым.
В каждой из следующих n строк содержится информация о «мороженом дня» в соответствующий день: наименование сорта мороженого sj и (через пробел) его рейтинг rj с точки зрения Харитона (j=1,2,…,n).
Наименование сорта мороженого sj — непустая строка из строчных латинских букв, цифр и нижнего подчёркивания, начинающаяся с буквы и имеющая длину не более 30 символов. Рейтинг мороженого rj является целым неотрицательным числом, не превосходящим 106.
Гарантируется, что рейтинг сорта мороженого не меняется: если некоторое наименование сорта встречается в данных несколько раз, оно всегда имеет один и тот же рейтинг.
...
+примечания
Гарантия на работу | 1 год |
Средний балл | 4.96 |
Стоимость | Назначаете сами |
Эксперт | Выбираете сами |
Уникальность работы | от 70% |