시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 1024 MB77137933549.925%

문제

$M=A^2$인 정수 $A$가 존재할 때 $M$을 제곱수라고 한다. 만약 제곱수 $M$을 뒤집어 얻은 수도 제곱수라면 $M$을 대칭제곱수라고 하자. 예를 들어 제곱수 $121$의 경우 뒤집은 수 $121$ 역시 제곱수이므로 대칭제곱수이지만, $49$의 경우 뒤집은 수 $94$가 제곱수가 아니므로 대칭제곱수가 아니다. 단, 뒤집었을 때 가장 앞의 $0$을 무시한다는 점에 유의한다. 예를 들어 $10100$을 뒤집으면 $00101$이 되지만 가장 앞의 $0$을 무시하면 $101$이 된다.

정수가 주어질 때마다 대칭제곱수인지 판별하는 프로그램을 작성하시오.

입력

첫 번째 줄에 테스트 케이스의 개수 $T$가 주어진다. $(1 \leq T \leq 10^5)$

두 번째 줄부터 $T$개의 줄에 걸쳐 정수 $N$이 주어진다. $(1 \leq N \leq 10^{18})$

출력

각 테스트 케이스에 대해 $N$이 대칭제곱수라면 YES, 아니면 NO를 출력한다.

예제 입력 1

2
9
3

예제 출력 1

YES
NO