코딩 테스트

아직 제출이 없습니다시간 제한2.5초메모리 제한1024 MB

문제

회사는 요즘 늘어난 코딩 테스트의 인기에 힘입어 코딩 테스트용 문제를 만들어 IT 기업에 판매하는 일을 하고 있다.

회사는 편의를 위해 만든 문제의 난이도00단계에서 N1N-1단계로 나눴다. 현재 회사에는 난이도가 ii단계로 평가된 문제가 A\[i]A\[i]개 준비되어 있고, 난이도 매기기가 애매해서 ii단계 혹은 i+1i+1단계로 평가된 문제도 B\[i]B\[i]개 준비되어 있다. 이외의 방식으로 난이도가 평가된 문제는 없다.

회사는 지금 문제를 판매할 기업을 물색하고 있다. 현재 구매 의향을 나타낸 기업은 총 MM곳이 있으며, 00부터 M1M-1까지의 번호가 붙어 있다. jj (0jM10 \le j \le M-1)번 기업은 회사의 문제들 중 난이도가 L\[j]L\[j]단계 이상이고 U\[j]U\[j]단계 이하인 문제에만 관심이 있다.

회사는 jj번 기업에게 문제를 판매할 때 L\[j]L\[j]단계에서 U\[j]U\[j]단계의 문제를 난이도 별로 하나씩 뽑아 묶음으로 판매하려고 한다. 이를 하나의 세트라고 하자.

jj번 기업에게만 문제를 판매한다면 최대 몇 개의 세트를 판매할 수 있을까? 

난이도가 ii단계 혹은 i+1i+1단계로 평가된 문제는 난이도를 둘 증 하나로 적절히 설정해서 판매하는 세트 개수가 최대한 많아지도록 해야 하며, 판매하는 모든 세트에 걸쳐 같은 문제가 여러 번 들어기지 않도록 해야 한다.

제한

  • 2N100,0002 \le N \le 100\\,000
  • 1M100,0001 \le M \le 100\\,000
  • 0A\[i]1080 \le A\[i] \le 10^8 (모든 0iN10 \le i \le N-1)
  • 0B\[i]1080 \le B\[i] \le 10^8 (모든 0iN20 \le i \le N-2)
  • 0L\[i]U\[i]N10 \le L\[i] \le U\[i] \le N-1 (모든 0jM10 \le j \le M-1)