P10685 [COTS 2024] 兔子 Zečevi

题目背景

译自 [Izborne Pripreme 2024 (Croatian IOI/CEOI Team Selection)](https://hsin.hr/pripreme2024/) D2T3。$\texttt{8s,512M}$。 **请不要滥用本题评测。滥用本题评测将被封号。**

题目描述

数轴上有 $N$ 只兔子,第 $i$ 只兔子位于 $x_i$,起初,第 $i$ 只兔子的能量为 $p_i$。 每秒钟会发生如下的事件: - 若存在至少一只兔子的能量为 $0$,则过程结束。 - 否则,每只兔子向右跳跃一个单位长度,同时能量减少 $1$。 数轴上分布着 $M$ 根胡萝卜,第 $i$ 根胡萝卜位于位置 $y_i$,质量为 $t_i$ 千克。当某只兔子的位置上有胡萝卜时,它可以选择吃 $a$ 千克的胡萝卜,其中 $a\in [0, y]$,其中 $y$ 为胡萝卜的质量。吃掉 $a$ 千克的胡萝卜后,兔子的能量增加 $a$,胡萝卜的质量减少 $a$。 显然兔子一旦停止跳跃,就再也不会跳跃了。在最优的情况下,兔子最多能跳跃多少秒?

输入格式

第一行,两个整数 $N,M$,含义见题面。 接下来 $N$ 行,第 $i$ 行两个整数 $x_i,p_i$; 接下来 $M$ 行,第 $i$ 行两个整数 $y_i,t_i$。

输出格式

输出一行一个整数,表示最优情况下的答案。

说明/提示

#### 样例解释 样例 $1$ 解释: 我们用二元组 $(x_i,p_i)$ 表示兔子的位置和能量。 跳跃三次后,三只兔子的状态分别为 $(5,1),(10,0),(6,2)$。第二只兔子吃掉 $2$ 千克的胡萝卜,状态变为 $(5,1),(10,2),(6,2)$。 接下来一次跳跃之后,三只兔子的状态分别为 $(6,0),(11,1),(7,1)$。第一只兔子吃掉 $3$ 千克胡萝卜,状态变为 $(6,3),(11,1),(7,1)$。 接下来一次跳跃之后,三只兔子的状态分别为 $(7,2),(12,0),(8,0)$。由于第二只兔子吃不到胡萝卜,所以跳跃过程终止。 可以证明这是最优的答案。 #### 数据范围 对于 $100\%$ 的数据,保证: - $1\le N,M\le 10^5$; - $0\le x_i,y_i\le 10^9$; - $0\le p_i,t_i\le 10^9$。 | 子任务编号 | 分值 | 约束 | |:-----:|:------:|:-------:| | $1$ | $9$ | $N=1$ | | $2$ | $12$ | $M=1$ | | $3$ | $26$ | $N,M\le 1\, 000$ | | $4$ | $34$ | $N,Q\le 50\, 000$ | | $5$ | $19$ | 无额外约束 |