만드는 중입니다

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

축제 장식

시간 제한9초메모리 제한2048 MB

요약
각 거리 d에 대해, x 좌표가 x_u + d인 전구가 있고 색이 다른 전구 중 번호가 가장 작은 u를 구합니다. 없으면 0을 출력합니다.
난이도

어려움10점 중 8점

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

문제

겨울 축제를 맞아 비트랜드의 중앙 대로를 장식하려고 한다. 이 대로는 xx축으로 볼 수 있으며, 여기에 nn개의 색깔 전구가 1,2,…,n1, 2, \ldots, n번으로 번호가 매겨져 있다. ii번 전구의 x좌표는 xix_i이고 색은 cic_i이다. 두 전구가 같은 x좌표를 갖는 경우는 없다.

qq개의 질의가 주어진다. ii번째 질의에서는 정수 did_i (1≤di≤2500001 \le d_i \le 250000)가 주어진다. xu+dix_u + d_i 위치에 다른 전구가 있고, 그 전구의 색이 cuc_u와 다른 전구 uu (1≤u≤n1 \le u \le n) 중에서 번호가 가장 작은 것을 찾는다. 그런 uu가 없을 수도 있다.

입력

첫 줄에 두 정수 nn과 qq가 주어진다 (1≤n,q≤2500001 \le n, q \le 250000). 다음 nn개 줄에는 각각 xix_i와 cic_i가 주어진다 (1≤xi≤2500001 \le x_i \le 250000, 1≤ci≤n1 \le c_i \le n). 다음 qq개 줄에는 각각 정수 did_i가 하나씩 주어진다.

출력

각 질의에 대해 답 uu를 한 줄에 출력한다. 조건을 만족하는 uu가 없으면 0을 출력한다. 답은 절대 오차 또는 상대 오차가 0.5 이하이면 정답으로 인정한다. 즉, 출력값 uu와 정답 u′u'에 대해 ∣u−u′∣max⁡(1,∣u′∣)≤0.5\frac{|u - u'|}{\max(1, |u'|)} \le 0.5이면 정답이다. 소수를 출력해도 된다.

예제1

  1. 예제 1

    입력
    4 5
    3 1
    1 2
    5 1
    6 2
    1
    2
    3
    4
    5
    
    예상 출력
    3
    2
    1
    2
    0