Logo
(追記) (追記ここまで)

33573번 - 대칭제곱수

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

문제

$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

힌트

출처

School > 한국디지털미디어고등학교 > 제2회 디미고 프로그래밍 챌린지 C번

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /