Problema número 125

Números vampiro

Tiempo máximo: 5,000 sMemoria máxima: 4096 KiB

En 1994, Clifford A. Pickover puso de manifiesto la existencia de los temidos números vampiro. Los números vampiro sobreviven ocultos entre el resto de nuestro sistema numérico, conservando los genes de sus padres tras multiplicarse. Así, por ejemplo, el número 2.187 es un número vampiro, al tener los mismos genes (dígitos) que sus dos progenitores, 27 y 81 (27 · 81 = 2.187).

Los números vampiro verdaderos (con pedigrí) cumplen cuatro condiciones:

  • Tienen un número par de dígitos.
  • Se obtienen al multiplicar dos números, llamados colmillos, que tienen la mitad de dígitos que el original.
  • Tienen los mismos dígitos que los colmillos, y en la misma cantidad (aunque en cualquier orden).
  • Los colmillos no acaban simultáneamente en 0.

Se han detectado también algunos números vampiro primos por serlo sus colmillos (536.539 = 563 · 953), e incluso vampiros con varios pares de colmillos (125.460 = 204 · 615 = 246 · 510). Algunos números se limitan a imitar a los vampiros, como el 126 (6 · 21) cuyos colmillos no tienen la misma longitud, o el 1.395 (5 · 9 · 31) que tiene tres colmillos. Afortunadamente, los imitadores no son peligrosos, y no nos interesan.

Como con los vampiros humanos, los números vampiro no son fáciles de detectar. ¿Puedes ayudarnos?

Entrada

La entrada estará compuesta de un primer valor que indicará el número de casos de prueba. Cada caso de prueba contendrá un número a ser comprobado. Los números no tendrán más de 9 dígitos (en base 10).

Salida

Para cada caso de prueba el programa escribirá SI si el número es un vampiro verdadero, y NO si no lo es.

Entrada de ejemplo

4
2187
126
1122
536539

Salida de ejemplo

SI
NO
NO
SI