만드는 중입니다

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

광물 수집

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

요약
0에서 시작하는 수직선 위 광물을 최소 에너지로 모두 젬으로 만들 때, 질의한 두 광물이 같은 젬에 들어갈 수 있는지 판단합니다.
난이도

어려움10점 중 9점

유형
정렬, 그리디, 동적 계획법
정답자
아직 제출이 없습니다

문제

여러분은 광산에서 광물을 수집하고 가공하여 회사에 납품하는 일을 한다. 광산은 반직선 형태이다. 광산에는 매일 아침 NN개 종류의 광물이 생성된다. ii번 광물은 수직선의 xix_i 위치에 yiy_i개 생성된다. (1≤i≤N)(1 \le i \le N)

회사에서 받은 특이한 로봇을 원격 조작하여 광물을 채취하고 가공한다. 로봇의 특징은 다음과 같다.

  1. 로봇의 처음 위치는 00이다.
  2. 원하는 위치로 이동할 수 있다. 이동한 거리만큼 에너지를 소모한다.
  3. 같은 위치에 있는 광물을 원하는 개수만큼 1개씩 담을 수 있다. 가. 로봇의 저장소는 최대 MM개의 광물을 담을 수 있으며, 한 번 담은 광물은 버릴 수 없다. 나. 광물을 담는 데 에너지를 소모하지 않는다.
  4. 로봇은 위치 00에서 보석을 제조할 수 있다. 가. 보석을 제조하려면 저장소에 광물이 적어도 1개 이상 있어야 한다. 나. 저장소에 담긴 광물을 모두 소모하여 보석을 만든다. 이때 만든 보석 jj는 제조에 사용한 광물 번호의 집합 SjS_j로 나타낸다. 다. 보석을 제조하는 데 에너지를 소모하지 않는다.

일과는 광산에 있는 모든 광물을 소모하여 보석을 만들고, 로봇을 처음 위치로 돌려놓는 것이다. 하루에 일과를 끝낼 수 있는 최소 에너지 EE만 사용하여 로봇을 조종해 보석을 만든다. 당일 일과를 무사히 마쳤다면 다음 날 아침에는 당일 아침과 같은 상태로 복원된다.

회사에서 매일 VIP 요구 사항 1개를 전달받는다. kk일차 요구 사항은 양의 정수 aka_k, bkb_k로 이루어져 있으며, aka_k번 광물과 bkb_k번 광물을 포함한 보석을 요구한다는 뜻이다. (1≤k≤Q)(1 \le k \le Q)

kk일차 요구 사항을 받았을 때, EE만큼의 에너지를 사용하여 일과를 무사히 마치면서 ak,bk∈Sja_k, b_k \in S_j를 만족하는 보석 jj를 만들 수 있는지 판단하는 프로그램을 작성하시오.

입력

첫 번째 줄에 광물의 종류 NN, 로봇 저장소에 담을 수 있는 광물의 최대 수 MM, 근무 기간 QQ가 공백으로 구분되어 주어진다. (2≤N,M≤200 000;(2 \le N, M \le 200\,000; 1≤Q≤200 000)1 \le Q \le 200\,000)

두 번째 줄부터 NN개의 줄에 걸쳐 광물의 정보가 주어진다. ii번째 줄에는 ii번 광물의 위치 xix_i와 개수 yiy_i가 공백으로 구분되어 주어진다. 광물의 위치는 서로 다르다. (1≤xi,yi≤109)(1 \le x_i, y_i \le 10^9)

그다음 QQ개의 줄에 걸쳐 VIP 고객의 요구 사항이 주어진다. kk번째 줄에는 서로 다른 두 광물 aka_k와 bkb_k가 공백으로 구분되어 주어진다. (1≤ak,bk≤N;(1 \le a_k, b_k \le N; ak≠bk)a_k \neq b_k)

출력

QQ개의 줄에 걸쳐 VIP 요구 사항을 만족하는 보석을 만들 수 있으면 YES, 없으면 NO를 출력한다.

예제2

  1. 예제 1

    입력
    4 2 2
    1 1
    2 2
    3 1
    4 2
    1 3
    3 4
    
    예상 출력
    YES
    NO
    
  2. 예제 2

    입력
    5 3 5
    1 2
    2 3
    10 1
    8 1
    15 2
    3 5
    4 5
    1 4
    1 2
    2 3
    
    예상 출력
    YES
    NO
    YES
    YES
    NO