만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

나이트 크루징

시간 제한1초메모리 제한1024 MB

요약
원점에서 출발한 나이트가 각 질의 점에 도달할 수 있는지 판단합니다.
난이도

보통10점 중 4점

유형
수학, 구현
정답자
아직 제출이 없습니다

문제

3차원 좌표 공간의 원점 (0,0,0)(0,0,0)에 나이트가 한 마리 놓여 있다. 이 나이트는 체스의 나이트처럼 움직이지만, 2차원이 아니라 3차원 공간에서 이동한다. 현재 위치에서 한 좌표는 ±1\pm 1만큼, 다른 좌표는 ±2\pm 2만큼, 나머지 좌표는 ±3\pm 3만큼 바꿔서 이동한다.

세 좌표에 각 값을 배정하는 순서는 자유롭다. 예를 들어 나이트가 (x,y,z)(x, y, z)에 있다면 (x+1,y+2,z+3)(x+1, y+2, z+3)이나 (x−2,y+3,z+1)(x-2, y+3, z+1)로 이동할 수 있다.

NN개의 3차원 정수 좌표가 주어진다. 각 좌표에 대해, 나이트가 원점에서 출발해 원하는 횟수만큼 이동하여 그 좌표에 도착할 수 있는지 판단하라.

입력

첫째 줄에 질문의 개수 NN이 주어진다. (1≤N≤500 0001 \leq N \leq 500\ 000)

둘째 줄부터 NN개의 줄에 3차원 정수 좌표 (xi,yi,zi)(x_i, y_i, z_i)가 주어진다. 모든 좌표의 절댓값은 10910^{9} 이하이다.

출력

ii번째 좌표 (xi,yi,zi)(x_i, y_i, z_i)에 도착할 수 있으면 YES를, 없으면 NO를 ii번째 줄에 출력한다. (1≤i≤N1 \leq i \leq N)

힌트

이동 규칙을 정확히 쓰면 다음과 같다. 나이트가 (x,y,z)(x, y, z)에 있을 때 (x+dx,y+dy,z+dz)(x + dx, y + dy, z + dz)로 갈 수 있다. 단, {∣dx∣,∣dy∣,∣dz∣}={1,2,3}\{|dx|, |dy|, |dz|\} = \{1, 2, 3\}이다.

예제1

  1. 예제 1

    입력
    3
    0 0 1
    3 2 1
    1 4 2
    
    예상 출력
    NO
    YES
    NO