만드는 중입니다

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

보디가드

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

요약
각 질의마다 시각 P에 좌표 X에서 출발하는 경호원이 VIP 이동 구간을 따라 얻을 수 있는 최대 보수를 구합니다.
난이도

어려움10점 중 9점

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

문제

JOI 거리는 서쪽에서 동쪽으로 뻗은 긴 길이며, 수직선으로 본다.

지금부터 NN명의 매우 중요한 인물(VIP)이 JOI 거리에 와서 이 길을 걷는다. VIP에게는 1부터 NN까지 번호가 붙는다. VIP ii (1≤i≤N1 \le i \le N)는 시각 TiT_i에 좌표 AiA_i에서 출발하여 좌표 BiB_i까지 걷는다. 속력은 단위 시간당 1이다. Ai<BiA_i < B_i이면 VIP ii는 양의 방향으로 일정한 속력으로 움직이고, Ai>BiA_i > B_i이면 음의 방향으로 일정한 속력으로 움직인다.

경호원의 일은 JOI 거리를 걸으며 VIP를 경호하는 것이다. VIP를 경호하려면 일정 시간 동안 그 VIP와 함께 걸어야 한다. 경호원은 VIP가 걷는 도중에 경호를 시작할 수 있고, VIP가 걷기를 마치기 전에 경호를 그만둘 수도 있다. 경호를 시작하고 끝내는 시각은 정수가 아니어도 된다. 다만 여러 VIP가 같은 좌표에 있더라도, 경호원이 동시에 경호할 수 있는 VIP는 한 명뿐이다.

경호원은 최대 속력 단위 시간당 1로 JOI 거리를 자유롭게 걸을 수 있다. VIP 한 명의 경호를 마치면 다른 곳으로 이동해 다른 VIP의 경호를 시작해도 된다. 경호원이 VIP ii와 함께 걸으면, VIP는 경호한 거리 1 단위당 CiC_i엔을 경호원에게 준다. CiC_i는 짝수 정수임이 보장된다.

여러분은 보안 회사에서 일하며 VIP를 경호하는 프로젝트 QQ개를 계획한다. 프로젝트에는 1부터 QQ까지 번호가 붙는다. 프로젝트 jj (1≤j≤Q1 \le j \le Q)에서 경호원은 시각 PjP_j에 좌표 XjX_j에서 일을 시작한다. 각 프로젝트마다 받을 수 있는 보상 총합의 최댓값을 구하라. 이 문제의 제약 아래에서 프로젝트의 보상 총합 최댓값은 항상 정수임이 증명되어 있다.

입력

다음 형식으로 표준 입력에서 데이터를 읽는다. 주어지는 모든 값은 정수이다.

N Q
T1 A1 B1 C1
.
.
.
TN AN BN CN
P1 X1
.
.
.
PQ XQ

출력

표준 출력에 QQ개의 줄을 쓴다. jj번째 줄에는 프로젝트 jj의 보상 총합 최댓값을 정수로 출력한다.

제한

  • 1≤N≤28001 \le N \le 2800
  • 1≤Q≤30000001 \le Q \le 3000000
  • 1≤Ti≤1091 \le T_i \le 10^9 (1≤i≤N1 \le i \le N)
  • 1≤Ai≤1091 \le A_i \le 10^9 (1≤i≤N1 \le i \le N)
  • 1≤Bi≤1091 \le B_i \le 10^9 (1≤i≤N1 \le i \le N)
  • Ai≠BiA_i \ne B_i (1≤i≤N1 \le i \le N)
  • 1≤Ci≤1091 \le C_i \le 10^9 (1≤i≤N1 \le i \le N)
  • CiC_i는 짝수 정수이다 (1≤i≤N1 \le i \le N)
  • 1≤Pj≤1091 \le P_j \le 10^9 (1≤j≤Q1 \le j \le Q)
  • 1≤Xj≤1091 \le X_j \le 10^9 (1≤j≤Q1 \le j \le Q)

예제2

  1. 예제 1

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

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