아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

떨어지는 공

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

요약
끝점이 움직이는 여러 경사 발판이 주어질 때, 주어진 x에서 떨어진 공이 지면에 닿는 x 좌표를 구한다.
난이도

어려움10점 중 9점

유형
세그먼트 트리, 트리, 이분 탐색, 연결 리스트
정답자
아직 제출이 없습니다

문제

요나스(Jonas)는 세워 둔 판에 비스듬한 고무 발판 NN개를 붙여 두었다. 각 발판은 하나의 선분이며, 양 끝점은 위아래로 움직일 수 있다. 끝점의 xx 좌표는 절대 바뀌지 않고 높이만 바뀐다. 요나스는 다음 두 종류 중 하나인 동작을 순서대로 KK번 수행한다.

  1. 발판 끝 옮기기. 어떤 발판의 한쪽 끝을 새 높이로 올리거나 내린다. 반대쪽 끝은 그대로 있으므로 발판의 길이는 바뀔 수 있다. 이 동작 뒤에도 발판은 결코 수평이 되지 않으며, 어느 순간에도 두 발판이 서로 닿거나 교차하지 않는다.

  2. 공 떨어뜨리기. 주어진 xx 좌표의 위쪽 높은 곳에서 작은 공을 놓는다. 공은 공중에서는 곧장 아래로 떨어지고, 발판에 닿으면 그 발판의 더 낮은 쪽 끝까지 굴러 내려가 거기서 떨어진 뒤 다시 곧장 아래로 떨어진다. 이 과정을 바닥에 닿을 때까지 반복한다.

발판들은, 한 발판에서 떨어진 공이 다른 발판의 끝에 정확히 떨어지는 일이 없도록 배치되어 있으며, 떨어뜨린 공은 항상 어떤 발판의 끝이 아닌 xx 좌표 위에서 출발한다. 떨어뜨린 각 공이 마지막으로 바닥에 닿는 xx 좌표를 구하여라.

입력

첫째 줄에 두 정수 NN과 KK가 주어진다.

이어지는 NN개의 줄에는 발판이 하나씩 주어진다. i+1i+1번째 줄에는 네 정수 xi1x_{i1}, yi1y_{i1}, xi2x_{i2}, yi2y_{i2}가 주어지며, 이는 발판의 왼쪽 끝 (xi1,yi1)(x_{i1}, y_{i1})과 오른쪽 끝 (xi2,yi2)(x_{i2}, y_{i2})의 좌표이다. 항상 xi1<xi2x_{i1} < x_{i2}이다.

그다음 KK개의 줄에는 동작이 하나씩 주어진다. N+j+1N+j+1번째 줄에는 두 정수 aja_j와 bjb_j가 주어진다.

  • aj=0a_j = 0이면 공을 떨어뜨리며, bjb_j는 그 공의 시작 xx 좌표이다.
  • aj>0a_j > 0이면 aja_j번째 발판의 오른쪽 끝을 옮기며, bjb_j는 그 끝의 새 yy 좌표이다.
  • aj<0a_j < 0이면 ∣aj∣|a_j|번째 발판의 왼쪽 끝을 옮기며, bjb_j는 그 끝의 새 yy 좌표이다.

출력

떨어뜨린 공의 수만큼 줄을 출력한다. 공을 떨어뜨린 순서대로, 각 공이 바닥에 닿는 xx 좌표를 한 줄에 하나씩 출력한다.

제한

  • 1≤N,K≤100 0001 \le N, K \le 100\,000
  • 1≤xi1,yi1,xi2,yi2,bj≤1061 \le x_{i1}, y_{i1}, x_{i2}, y_{i2}, b_j \le 10^6
  • xi1<xi2x_{i1} < x_{i2}이고 yi1≠yi2y_{i1} \ne y_{i2}
  • −N≤aj≤N-N \le a_j \le N

예제5

  1. 예제 1

    입력
    3 8
    2 3 5 4
    1 2 3 1
    4 2 6 3
    0 4
    0 7
    2 3
    0 4
    -1 6
    0 3
    3 1
    0 3
    
    예상 출력
    3
    7
    1
    4
    6
    
  2. 예제 2

    입력
    1 4
    2 5 8 3
    0 5
    -1 1
    0 5
    0 3
    
    예상 출력
    8
    2
    2
    
  3. 예제 3

    입력
    3 4
    4 10 10 8
    8 6 14 4
    12 3 18 1
    0 6
    0 13
    0 20
    0 5
    
    예상 출력
    18
    18
    20
    18
    
  4. 예제 4

    입력
    1 3
    5 3 15 7
    0 10
    0 4
    0 16
    
    예상 출력
    5
    4
    16
    
  5. 예제 5

    입력
    1 4
    3 10 9 4
    0 6
    1 12
    0 6
    0 2
    
    예상 출력
    9
    3
    2