Problem

17 /19


Olympiad winners

Problem

First, the number of participants in the Olympiad N is given as input to the program. Each of the following N lines contains the result of one of the participants in the Olympiad in the following format:
<LastName> <Name> <class> <points>,

where <LastName> – character string (maximum 20 characters);
- <Name> – character string (maximum 15 characters);
- <class> – number from 7 to 11;
- <points> – an integer number of points scored by the participant. 

<Surname> and <Name>, <Name> and <class> as well as <class> and <scores> separated by a single space.

Input string example:
Semenov Egor 11 225

The winner of the Olympiad is the participant with the most points, provided that he scored more than 200 points. If several participants scored such a number of points, then all of them are recognized as winners, provided that their share does not exceed 20% of the total number of participants.
No one is recognized as the winner of the Olympiad if there are no participants who scored more than 200 points, or more than 20% of the total number of participants scored the same highest score.
Write a program that is efficient in terms of running time and memory used, which will determine the last name and first name of the best participant who did not become the winner of the Olympiad. If there are several such participants, i.e. if several people scored the same score following the winners' score, or if there are no winners, but there are several best participants (in this case they are the desired ones), then only the number of the desired participants is displayed. It is guaranteed that the required participants (participant) are available. 

The program should display the last name and first name of the required participant or their number separated by a space.

Sample output (single member searched):
Semenov Egor
 
Second output (multiple search members):
12