После единых выпускных экзаменов по информатике в район пришла информация о том, какой ученик какой школы сколько баллов набрал. По положению об экзамене каж¬дый район сам определяет, за какой балл нужно поставить какую оценку.
Районный методист решила, что оценку «отлично» должны получить 20% участников (целое число, с отбрасыванием дробной части).
Для этого она должна определить, какой балл должен был набрать ученик, чтобы получить «отлично».
Если невозможно определить такой балл, чтобы «отлично» получили ровно 20% участников, «отлично» должно получить меньше участников, чем 20%.
Если таких участников не окажется (наибольший балл набрали больше 20% участников) — эти и только эти ученики должны получить «отлично».
Напишите эффективную, в том числе и по используемой памяти, программу (укажите используемую версию языка программирования, например Borland Pascal 7.0), которая должна вывести на экран наименьший балл, который набра¬ли участники, получившие «отлично». Известно, что информатику сдавало больше 5-ти учеников. Также известно, что есть такое количество баллов, которое не получил ни один участник.
На вход программе сначала подаётся число учеников, сда-вавших экзамен. В каждой из следующих N строк находится информация об учениках в формате:
<Фамилия> <Имя> <Номер школы> <Количество баллов>
где <Фамилия> — строка, состоящая не более чем из 30 символов без пробелов,
<Имя> — строка, состоящая не более чем из 20 символов без пробелов,
<Номер школы> — целое число в диапазоне от 1 до 99,
<Количество баллов> — целое число в диапазоне от 1 до 100. Эти данные записаны через пробел, причём ровно один между каждой парой (то есть всего по три пробела в каждой строке).
Пример входной строки:
Иванов Иван 50 87
Пример выходных данных:
78
PDF-версии: 