In un vecchio torneo, i tecnici del software avevano implementato un algoritmo di ranking basato su bubble sort. Allora il numero di partecipanti era ridotto e quell’approccio funzionava senza problemi. Ma oggi i partecipanti sono diventati troppi, e ti viene richiesto di rendere più rapido l’algoritmo di ranking.
Ogni squadra ha un numero identificativo (unico) e un punteggio. Le squadre devono essere ordinate in ordine decrescente rispetto al punteggio (prima i punteggi più alti, poi quelli più bassi), e quelle con lo stesso punteggio devono mantenere l’ordine in cui compaiono nell’input. Perciò ti viene chiesto di implementare un ordinamento stabile.
Input
La prima riga dell’input contiene un singolo intero n (1 ≤ n ≤ ).
Le successive n righe contengono coppie di valori separate da uno spazio (), che rappresentano l’identificatore unico di ogni squadra e il punteggio ottenuto.
Output
Il programma deve stampare n righe. Ogni riga conterrà due interi: l’id della squadra e il punteggio corrispondente.