Au départ, on vous fournit une base de données vide et vous devez traiter une série de requêtes. Il existe deux types de requêtes : "Add" et "Search". La requête "Add" ajoute un nom dans la base de données, tandis que la requête "Search" vous demande d’afficher tous les noms de la base de données qui commencent par un préfixe donné, dans l’ordre lexicographique. Toutefois, si plus de 20 noms correspondent à ce préfixe, vous ne devez afficher que les 20 premiers.
Entrée
L’entrée commence par un entier q (1 ≤ q ≤ 200 000) sur la première ligne, qui représente le nombre de requêtes. Les q lignes suivantes contiennent les requêtes au format suivant :
Pour les requêtes "Add" : add s (où s est le nom à ajouter à la base de données).
Pour les requêtes "Search" : search p (où p est le préfixe à rechercher).
La longueur des chaînes de caractères dans les requêtes ne dépasse pas 20 caractères.
Sortie
Pour chaque requête "Search", affichez les noms de la base de données qui commencent par le préfixe indiqué, séparés par un espace. S’il y a plus de 20 noms qui correspondent au préfixe, n’affichez que les 20 premiers.
Exemples
Input
Output
9
add cat
add code
add core
search co
add profound
add found
search fo
add fight
search f