Inversion de dictionnaire

Sujet

La bibliothèque contient de nombreux dictionnaires, mais pour certains couples de langues, elle ne dispose que du dictionnaire permettant d’aller de la première langue vers la seconde, et pas du dictionnaire permettant de faire l’inverse.

Étant donné un dictionnaire bilingue, vous devez l’inverser pour construire le dictionnaire inverse.

Contraintes

Chaque mot contient au plus 50 caractères.

Entrée

Sortie

Exemple


entrée :

2
travail work
verite truth

sortie :

truth verite
work travail

Solution

Il est inutile d'utiliser la structure de données dict de Python, une liste de tuple sera suffisante, on peut trier cette liste de couple facilement en créant la liste avec la seconde langue en premier dans le tuple.

nb_traductions = int(input())
traductions = []
for i in range(nb_traductions):
    mot_lang1, mot_lang2 = input().split()
    traductions.append((mot_lang2, mot_lang1)) # stockage inversé

traductions.sort() # tri sur la première composante par défaut

for (mot_lang2, mot_lang1) in traductions:
    print(mot_lang2, mot_lang1)