Bueno tengo un grandisimo problema en un ejercicio, este estuvo en un concurso de programación y lamentablemente en el debido tiempo no lo comprendí, aún sigo con la misma intriga no se como comenzar o que tipo de algoritmo usar para este al principio pensé que era basado a la tabla ascii pero no le encontre nada, este es el problema agradecería si alguien me diera una idea de como resolverlo.
ESTA TRADUCIDO
Los marcianos usan el alfabeto inglés para comunicarse. Sin embargo, tienen un lenguaje completamente diferente, pero se basa en un mapeo uno a uno (biyectivo) de cartas de marciano a inglés. Sin embargo, tenga cuidado, las letras minúsculas y mayúsculas en inglés no son necesariamente las mismas en marciano. Por ejemplo, la palabra "CARS" en marciano se traduce como "Unil" en inglés, mientras que la palabra "cars" en marciano se traduce como "EPFL".
¡Los marcianos han invadido la Tierra! Pero, hemos interceptado sus comunicaciones. Ayúdanos a traducir sus mensajes al inglés.
Entrada
La primera línea de la entrada contiene un número entero n (1 ≤ n ≤ 100).
La segunda línea contiene una oración en marciano, que consta de n palabras separadas por espacios, cada una de las cuales consta de letras minúsculas y mayúsculas en inglés. El número total de letras en la oración es como mucho 105.
Salida
Imprima, en una sola línea, n palabras separadas por espacios que representen la traducción al inglés de la oración.
No imprima ningún espacio inicial o final y termine su salida con un carácter de nueva línea.
Examples
Input
1
CARS
Output
Unil
Input
1
cars
Output
EPFL
Input
3
IuVEJxTXs UvOHhng yZKfAYmaqolM
Output
vpVZzBNtL SCubWma ocIYneAPqxDs
Input
3
NtGQibw djPrCpek FWzL
Output
hRkMGgJ fHrFUQTj XOwd
Input
3
aySBaPyb RM gzYMynY
Output
PolyProg is awesome