P9431 [NAPC-#1] Stage3 - Jump Refreshers

题目背景

upd at 2025/9/7: 为了补偿“孩子不懂事出着玩的”,设立了以下加强版(rStage3): - 尝试在 $O(n\log n)$ 的时空复杂度内解决该问题,即 $n$ 的范围扩大到 $5\times 10^4$ 左右。 当然加强版不想单独再出成一个题,写完的佬就在本题交吧(每个测试点时限 50ms?)。[加强版题解 link](https://www.luogu.com.cn/article/q4j5740g)。 问 kid 最多能跳到多少个跳跃球也是计数题(确信) --- > ![](https://cdn.luogu.com.cn/upload/image_hosting/wkktxonu.png)

题目描述

(注意本题中 kid 的移动方式与实际的 iw 游戏中不同。) kid 面前有一个无穷大的竖直二维平面。坐标系 $x$ 轴正方向为从左到右,$y$ 轴正方向为从下到上。 地图(该平面)内有 $n$ 个**位置互不相同**的**可以无限重复使用**的跳跃球。当 kid 正好位于某跳跃球位置时,他可以让 shift 键按下,然后他会瞬间上升 $d$ 格(此期间不能左右移动)。他每秒往下坠落 $1$ 格,同时每秒 kid 可以选择:向左或向右移动 1 格,或者不移动。当 kid 不在跳跃球上时他不能起跳。 ![](https://cdn.luogu.com.cn/upload/image_hosting/1abzjhjs.png) 上图是一个例子,蓝色区域表示 kid 在跳跃球(箭头)处起跳($d=2$)后可以达到的区域。**kid 每秒时的横纵坐标只能是整数,即:我们认为他不能达到非整点位置。** 现在,kid 把存档放在了第 $c$ 个跳跃球处(即起点是第 $c$ 个跳跃球处;此时可以立即起跳)。定义 kid 的得分为他经过(即在某处起跳:显然起跳之后可以回到原位置)的**不同**跳跃球的个数。kid 想知道他可以最多获得多少得分(**不需要**(但可以)**回到起点**),请你告诉他吧。 **跳跃球可以无限重复使用,即 kid 可以在某个跳跃球上无限起跳。**

输入格式

**本题单测试点内有多组数据。** 第一行仅两个整数 $T,id$ 表示测试数据的数量和测试点编号。特别地,样例的 $id=0$。 对于每组测试数据: 第一行三个正整数 $n,d,c$ 含义如上所述。 后 $n$ 行每行两个正整数 $x_i,y_i$ 表示第 $i$ 个跳跃球的位置。

输出格式

对于每组测试数据输出一行一个正整数表示最大得分。

说明/提示

### 【数据范围】 **本题采用捆绑测试。** $$ \def\r{\cr\hline} \def\None{\text{None}} \def\arraystretch{1.5} \begin{array}{c|c|c|c} \textbf{Subtask} & id= & \textbf{Sp. Constraints} & \textbf{Score}\r \textsf1& 1\sim3,36 & n\leqslant10,T\leqslant10 & 10 \r \textsf2& 4\sim7 & \sum n\leqslant200 & 15 \r \textsf3& 8\sim13 & \mathbf A & 25 \r \textsf4& 14\sim18 & \mathbf B & 10 \r \textsf5& 19\sim35 & - & 40 \r \end{array} $$ 其中 $\sum n$ 表示单测试点内所有数据的 $n$ 的总和。 - 特殊性质 $\mathbf A$:保证对于任意不同跳跃球 $u,v$,如果 kid 理论上能从 $u$ 跳到 $v$(理论上:不考虑 kid 能否从起点到达 $u$ 的问题,下同),那么他理论上**一定不可以**从 $v$ 跳到 $u$。 - 特殊性质 $\mathbf B$:保证对于任意跳跃球 $u,v$,如果 kid 理论上能从 $u$ 跳到 $v$,那么他理论上**一定可以**从 $v$ 跳到 $u$。 注意上面的“从 $u$ 跳到 $v$"不一定非得一跳到位。比如样例 #1-2 中可以从第 $3$ 个跳到第 $5$ 个:$3\to2\to4\to5$。 对于 $100\%$ 的数据,$1\leqslant T\leqslant 1000$,$1\leqslant n\leqslant 3000$,$\sum n\leqslant 3000$,$1\leqslant d\leqslant 10^9$,$1\leqslant c\leqslant n$,$1\leqslant x_i,y_i\leqslant10^6$,$(x_i,y_i)$ 互不相同。 --- #### 【样例解释 #1-1】 ![](https://cdn.luogu.com.cn/upload/image_hosting/zpc7sm2i.png) $d=2$,容易发现离开初始位置就上不去了。所以 kid 要么往左边碰第 $2$ 个跳跃球,得分为 $2$;要么往右边跳,经过第 $3$ 和第 $4$ 个跳跃球,得分为 $3$。 #### 【样例解释 #1-2】 ![](https://cdn.luogu.com.cn/upload/image_hosting/q8ks8qb4.png) $d=3$,kid 可以先往下走一圈($4\to3\to2\to4$)跳回起点,然后往右去碰第 $5$ 个球。左上角的第 $1$ 个跳跃球是碰不到的。 #### 【样例解释 #1-3】 ![](https://cdn.luogu.com.cn/upload/image_hosting/akghkpe9.png) 通过最上面那个球是可以跳到右边的。 #### 【样例解释 #1-4】 ![](https://cdn.luogu.com.cn/upload/image_hosting/50smzomm.png) 有的人活着……