Dominio de integridad

Time Limit:
1 Sec
Memory Limit:
128Mb
Enviados:
245
Resuelto:
77

Descripción

Un anillo es un sistema algebraico formado por un conjunto no vacío y dos operaciones internas, llamadas usualmente «suma» y «producto», que cumplen ciertas propiedades.

Puede que conozcas muchos anillos, por ejemplo los números enteros. Ahora hablaremos de una parte de los enteros que también son anillos, los enteros modulo m.
Los enteros modulo m, son todas los posibles resultados de sacarle modulo m a cualquier numero, por ejemplo los enteros modulo 4 son: $0, 1, 2, 3$. Y las operaciones igual usan el modulo.

Espero no aburrirte con estas definiciones, pero lee el problema.

En un anillo se dice que existe un Divisor de Cero si se cumple que:
$a \cdot b =0 => a \neq 0$ y $b \neq 0$. Por ejemplo si tomamos los enteros modulo 12, tenemos que $3 \cdot 4=0$ (ya que $3 \cdot 4=12$ y $12\%12=0$), entonces eso seria un Divisor de Cero en el conjunto de enteros modulo 12.
Ahora existe una propiedad en los anillos que se llama Dominio de Integridad, se dice que un anillo es un Dominio de Integridad si no tiene Divisores de Cero, es decir se cumple que si $a \cdot b = 0$ entonces alguno de ellos debe ser $0$.

Ahora la tarea es la siguiente, se te dara un numero entero $m$, que representa el conjunto de Enteros modulo $m$ y debes decir si este es o no es un Dominio de Integridad

Entrada

La primera linea tiene un entero $T$ que representa los casos de entrada $(1 \leq T \leq 1000)$.
Por cada caso de entrada se tiene un numero entero $m$ $(2 \leq m \leq 10^{6})$ que representa el conjunto de Enteros modulo $m$.

Salida

La salida consiste de un mensaje por cada caso, "SI" si es que el conjunto es un Dominio de Integridad o "NO" si no lo es.

Ejemplo Entrada

Copy icon
3
7
12
331

Ejemplo Salida

Copy icon
SI
NO
SI

Ayuda