SOJ ONLINE JUDGE

거듭제곱인가?

난이도: Gold IV 출제자: pizzaroot 시간 제한: 1000 ms 메모리 제한: 512 MB
이분 탐색매개 변수 탐색수학브루트포스 알고리즘

정수 $N$이 주어졌을 때, $a^b=N$인 $2$ 이상의 정수 $a$, $b$가 존재한다면 Yes를, 그렇지 않다면 No를 출력하는 프로그램을 작성하라.

입력

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

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

출력

각 테스트 케이스마다 $a^b=N$인 $2$ 이상의 정수 $a$, $b$가 존재한다면 Yes를, 그렇지 않다면 No를 한 줄에 하나씩 출력한다.

예제 입력 1

7
1
4
8
9
10
27
28

예제 출력 1

No
Yes
Yes
Yes
No
Yes
No

제출