수학 대회
시간 제한1초메모리 제한512 MB
아주 큰 십진 정수 x가 주어질 때, x가 9의 배수이면 YES를, 아니면 NO를 출력한다.
문제
2016년 국제 수학 올림피아드에 출제된 2번 문제는 다음과 같다.
표의 각 칸에 I, M, O 중 한 글자를 적어 아래 두 조건을 모두 만족시킬 수 있는 양의 정수 을 모두 구하여라.
- 각 행과 각 열에서 I가 전체의 3분의 1, M이 3분의 1, O가 3분의 1이다.
- 어떤 대각선 위에 놓인 칸의 개수가 3의 배수이면, 그 대각선에서도 I가 3분의 1, M이 3분의 1, O가 3분의 1이다.
표의 행과 열에는 1부터 까지 번호가 순서대로 붙어 있고, 각 칸은 인 정수 쌍 에 대응한다. 이면 표에는 두 종류의 대각선이 모두 개 있다. 첫 번째 종류는 가 같은 칸을 모두 모은 것이고, 두 번째 종류는 가 같은 칸을 모두 모은 것이다.
이 문제의 답은 9의 배수인 양의 정수 전체다. 즉 어떤 양의 정수 에 대하여 로 쓸 수 있는 이 답이다. 지금 참가한 대회는 올림피아드가 아니라 프로그래밍 대회이므로 질문을 바꾼다. 양의 정수 가 주어질 때, 를 위 문제의 으로 쓸 수 있는지 판정하라.
입력
첫째 줄에 테스트 케이스의 개수 가 주어진다. ()
다음 개의 줄에 각 테스트 케이스의 정수 가 한 줄에 하나씩 주어진다. () 는 앞에 0이 붙지 않은 십진수로 주어진다.
출력
각 테스트 케이스마다 를 으로 쓸 수 있으면 YES를, 쓸 수 없으면 NO를 한 줄에 출력한다. 따옴표는 출력하지 않는다.