Конструкция кажется слишком перегруженной. Как лучше упростить?
interns = [
(lambda x: (-int(x[1]), int(x[2]), x[0]))
(input().split()) for _ in range(number)
]
Формат ввода В первой строке задано число участников n, 1 ≤ n ≤ 100 000. В каждой из следующих n строк задана информация про одного из участников. i-й участник описывается тремя параметрами:
уникальным логином (строкой из маленьких латинских букв длиной не более 20) числом решённых задач Pi штрафом Fi Fi и Pi — целые числа, лежащие в диапазоне от 0 до 109. Формат вывода Для отсортированного списка участников выведите по порядку их логины по одному в строке.
Пример 1 Ввод
5 alla 4 100 gena 6 1000 gosha 2 90 rita 2 90 timofey 4 80
Вывод:
gena timofey alla gosha rita
Ответы (1 шт):
Автор решения: Stanislav Volodarskiy
→ Ссылка
Сделайте функцию для чтения:
def input_record():
t0, t1, t2 = input().split()
return -int(t1), int(t2), t0
interns = [input_record() for _ in range(number)]