Problem F
Bonuspoäng
Labbassistenterna i kursen DD4380 rapporterar in studentresultat med ojämna mellanrum, och du behöver kunna se vilka studenter som hade uppnått ett visst resultat ett visst datum, för att kunna bedömma om de ska få bonuspoäng eller inte.
Du ska skriva ett program som kan läsa in en osorterad lista med $N$ st inrapporterade betyg, och skriva ut alla resultat som var färdiga fram till ett visst datum, $D$.
Ditt program ska skriva ut alla resultat fram till och med det angivna datumet, och sortera listan alfabetiskt, i första hand efter efternamn, i andra hand efter förnamn (om två personer skulle ha samma efternamn). Om en student har redovisat flera gånger i det angivna intervallet, så ska bara det högsta resultatet listas. Om samma student har redovisat till sitt högsta resultat flera gånger före (eller på) det efterfrågade datumet så ska bara det första resultatet listas. Om inga resultat finns före (eller på) det efterfrågade datumet, så ska ditt program skriva ut texten “EMPTY”.
Input
Varje indatafil inleds med två tal, det första är antalet poster $N$ i den efterföljande listan, det andra talet är datumet $D$. Därefter kommer $N$ st poster, på varsin egen rad.
Du kan anta att alla poster är skrivna på formen:
datum förnamn efternamn poäng
Du kan anta att det är max $10\, 000$ poster i en lista, och att alla datum är efter 19000101. Poängen kan vara heltal från och med $0$, upp till och med $100$.
Alla datum anges på formen YYYYMMDD, enligt ISO8601.
Alla namn består av en eller flera bokstäver ur det engelska alfabetet, och innehåller inga specialtecken, accenter eller andra diakritiska symboler.
Output
En lista med poster enligt formatet ovan, eller det ensamma ordet “EMPTY”.
Sample Input 1 | Sample Output 1 |
---|---|
7 20210613 20210612 Kim Jung 15 20210713 Kim Jung 12 20210823 Kim Jung 21 20210314 Kim Jung 19 20210613 Anna Jung 7 20210327 Carl Svensson 23 20190903 Omid Ghaderzadeh 23 |
20190903 Omid Ghaderzadeh 23 20210613 Anna Jung 7 20210314 Kim Jung 19 20210327 Carl Svensson 23 |
Sample Input 2 | Sample Output 2 |
---|---|
3 20120710 20210613 Maria Gonzales 24 20210713 Pekka Arinen 16 20210823 Meifang Li 20 |
EMPTY |