Python
Тимофей решил организовать соревнование по спортивному программированию, чтобы найти талантливых стажёров. Задачи подобраны, участники зарегистрированы, тесты написаны. Осталось придумать, как в конце соревнования будет определяться победитель.
Каждый участник имеет уникальный логин. Когда соревнование закончится, к нему будут привязаны два показателя: количество решённых задач Pi и размер штрафа Fi. Штраф начисляется за неудачные попытки и время, затраченное на задачу.
Тимофей решил сортировать таблицу результатов следующим образом: при сравнении двух участников выше будет идти тот, у которого решено больше задач. При равенстве числа решённых задач первым идёт участник с меньшим штрафом. Если же и штрафы совпадают, то первым будет тот, у которого логин идёт раньше в алфавитном (лексикографическом) порядке.
Тимофей заказал толстовки для победителей и накануне поехал за ними в магазин. В своё отсутствие он поручил вам реализовать алгоритм быстрой сортировки (англ. quick sort) для таблицы результатов. Так как Тимофей любит спортивное программирование и не любит зря расходовать оперативную память, то ваша реализация сортировки не может потреблять O(n) дополнительной памяти для промежуточных данных (такая модификация быстрой сортировки называется "in-place").
Формат ввода
В первой строке задано число участников n, 1 ? n ? 100 000.
В каждой из следующих n строк задана информация про одного из участников.
i-й участник описывается тремя параметрами:
уникальным логином (строкой из маленьких латинских букв длиной не более 20)
числом решённых задач Pi
штрафом Fi
Fi и Pi — целые числа, лежащие в диапазоне от 0 до 109.
Формат вывода
Для отсортированного списка участников выведите по порядку их логины по одному в строке.
Ограничение по времени: 2 сек
Ограничение по памяти: 64мб
Пример ввода:
5
alla 4 100
gena 6 1000
gosha 2 90
rita 2 90
timofey 4 80
Пример вывода:
gena
timofey
alla
gosha
rita
Марго
сгюа
быстро и верно хотя никто не хотел браться, не знали как делать. спасибо эксперту
Яна
РАНХиГС
Очень быстро, и качественно! P. S. Разборчивый и понятный почерк Спасибо от души!
Юлия
ВУЗ
Хочу сказать огромное спасибо Наталье, за быстрое и качественное исполнение заказа. Буду о...
сашв
М.У им С.Ю. Витте
Спасибо большое, преподаватель поставил 100 баллов). Выполнено в срок и идеально, очень ва...