Implementar un programa que, para cada palabra dada, escriba el palíndromo más pequeño (en orden lexicográfico) que se puede formar usando exactamente una vez todas sus letras. Tanto las palabras dadas como los palíndromos formados no tienen porqué tener ningún sentido. Si, para alguna palabra, no es posible formar ningún palíndromo, hay que indicarlo.
La entrada consiste en el número de palabras en una línea, seguido de líneas, cada una con una palabra no vacía. Las palabras están formadas exclusivamente por como mucho 500 letras minúsculas.
Tu programa deberá resolver una entrada como la descrita en menos de 1 segundo.
Para cada palabra, escribir una línea con el palíndromo más
pequeño que se puede formar usando exactamente una vez todas las letras
de la palabra. Si no es posible formar ninguno, escribir
"NINGUN PALINDROMO".
Input
9 abcabc a xy zzz bbaa bbbbbccccccaaaa aaaabbbccd aeeeiiiiiooou dabalearrozalazorraelabad
Output
abccba a NINGUN PALINDROMO zzz abba aabbcccbcccbbaa NINGUN PALINDROMO NINGUN PALINDROMO aaaabdelorrzlzrroledbaaaa