만드는 중입니다

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

태풍 예보

면접 대비

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

요약
관측된 태풍 중심 위치와 반지름 R이 주어질 때, 질의한 날짜의 사람 위치가 안전 반원, 위험 반원, 경계 또는 태풍 밖인지 판별합니다.
난이도

보통10점 중 4점

유형
이분 탐색, 기하, 구현
정답자
아직 제출이 없습니다

문제

2099년 여름, 평화로운 지구에 태풍이 찾아왔다!

태풍이 오는 곳의 지도는 2차원 좌표계로 나타낼 수 있으며, 태풍은 원 하나로 나타낼 수 있다. 경북대학교 알고리즘 문제해결 동아리 gori는 태풍을 KK번 관측하여 NN일 중 ii번째 날의 태풍 위치 (xi,yi)(x_i, y_i)를 구했다. gori는 이번 태풍의 신기한 점을 하나 발견했다. 태풍은 관측일과 관측일 사이에 xx축 또는 yy축에 평행한 방향으로 하루에 1씩 움직이는 등속운동을 한다. 또한 태풍은 관측일과 관측일 사이에서 이동 방향을 바꾸지 않는다. 따라서 연속된 두 관측일 사이에 태풍은 xx축 또는 yy축에 평행한 방향으로 두 관측일의 차만큼 움직인다. gori는 1번째 날과 NN번째 날에 태풍을 관측했으며, 같은 날에 태풍을 두 번 관측한 적은 없다. NN번째 날 이후에는 관측일이 없으므로 태풍은 NN번째 날에 이동 방향을 바꾸지 않는다.

태풍이 이동하는 동안, 태풍 위치를 중심으로 하는 원의 왼쪽 반원을 안전 반원, 오른쪽 반원을 위험 반원이라고 한다. 안전 반원과 위험 반원은 원의 둘레를 포함한다.

태풍이 어떤 관측일에 방향을 바꾸면, 그 관측일부터 바뀐 방향으로 움직인 것으로 본다. gori는 NN일 동안 관측한 태풍 좌표 KK개와 태풍의 반지름 RR을 받았다. 또한 QQ개의 날짜와 사람 위치 (j,xj,yj)(j, x_j, y_j)가 주어진다. 이는 jj번째 날에 사람이 (xj,yj)(x_j, y_j)에 있다는 뜻이다. 사람의 위치는 다음 네 가지로 나눌 수 있다.

  1. 안전 반원 안에 있다.
  2. 위험 반원 안에 있다.
  3. 안전 반원과 위험 반원의 경계에 있다.
  4. 태풍 밖에 있다.

입력

첫 번째 줄에 N,K,R,QN, K, R, Q가 공백으로 구분되어 주어진다. (3≤N≤200 000,3≤K≤N,1≤R≤109,1≤Q≤100 000)(3 \le N \le 200\,000, 3 \le K \le N, 1 \le R \le 10^9, 1 \le Q \le 100\,000)

두 번째 줄부터 K+1K+1번째 줄까지 i,xi,yii, x_i, y_i가 공백으로 구분되어 주어진다. (1≤i≤N,−109≤xi,yi≤109)(1 \le i \le N, -10^9 \le x_i, y_i \le 10^9)

태풍의 정보는 관측일의 오름차순으로 주어진다. 모든 관측일은 서로 다르다.

K+2K+2번째 줄부터 K+Q+1K+Q+1번째 줄까지 j,xj,yjj, x_j, y_j가 공백으로 구분되어 주어진다. (1≤j≤N,−109≤xj,yj≤109)(1 \le j \le N, -10^9 \le x_j, y_j \le 10^9)

입력되는 모든 수는 정수이다.

출력

QQ개의 줄에 걸쳐, 사람 위치가 안전 반원에 속하면 safe, 위험 반원에 속하면 unsafe, 안전 반원과 위험 반원의 경계에 있거나 태풍 밖에 있으면 gori를 출력한다.

예제1

  1. 예제 1

    입력
    10 3 2 6
    1 0 0
    5 4 0
    10 4 5
    1 0 1
    1 0 -1
    2 1 1
    7 7 2
    6 7 5
    5 4 -1
    
    예상 출력
    safe
    unsafe
    safe
    gori
    gori
    gori