Олимпиадный тренинг

Задача . Сортировка по ключу - 3*


Задача

Темы:

Напишите программу для решения следующей задачи.

Участники викторины письменно отвечают на 10 вопросов различной сложности. За правильный ответ начисляется от 1 до 5 баллов в зависимости от сложности вопроса. За неверный ответ вычитается от 1 до 5 баллов. Участник может не отвечать на какой-то вопрос, в таком случае баллы за этот вопрос не начисляются.
По результатам викторины для каждого участника вычисляются три показателя:
1) сумма – общее количество набранных баллов;
2) плюсы – сумма баллов без учёта неверных ответов;
3) ответы – общее количество сданных ответов (верных и неверных).
В таблице результатов участники располагаются по убыванию первого показателя – суммы, при равенстве сумм – по убыванию второго показателя (плюсов), при равенстве сумм и плюсов – по убыванию третьего показателя (ответов). При равенстве всех трёх показателей участники располагаются в итоговой таблице в порядке возрастания их личных номеров.
Дальнейший отбор проводится среди тех, кто набрал положительную сумму баллов, участники с нулевой и отрицательной суммой исключаются.
 
В следующий тур проходят участники, занявшие места в первой трети полученной таблицы (учитываются только положительные результаты), а также те, у которых все три показателя такие же, как у занявшего последнее место в первой трети таблицы.
 
Примечание. Если вычисленное количество участников оказывается не целым, учитывается целая часть полученного числа.

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

Первая строка содержит целое число N (N ≤ 10 000) – общее количество участников. Каждая из следующих N строк соответствует одному участнику и содержит 11 целых чисел, разделённых пробелами: сначала ID участника, затем – баллы, полученные им за каждый из 10 вопросов.
Гарантируется, что ID участников не повторяются.


Выходные данные:
Программа должна вывести список ID 
участников, прошедших в следующий тур, в том порядке, в котором их ID  расположены в рейтинговом списке. 
Примеры
Входные данныеВыходные данные
1 6
4 2 2 -1 -2 1 0 0 1 -2 4
7 5 1 1 0 1 0 1 0 0 0
11 1 0 2 1 3 1 0 -1 -2 0
1 0 1 0 0 1 0 1 0 2 0
6 2 5 -2 2 3 5 0 0 1 0
10 1 -1 3 -1 -1 0 0 0 1 0
6
7
2 6
4 2 2 -1 -2 1 0 0 1 -2 0
7 3 1 1 0 1 0 1 0 0 0
11 1 0 1 1 3 1 0 0 0 0
1 0 1 0 0 1 0 1 0 2 0
6 2 5 -2 2 3 5 0 0 1 0
10 1 -1 3 -1 -1 0 0 0 1 0
6
7
11

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
Python2
Комментарий учителя