P17545 [JAG 2026 Summer Camp #2] Robot Damage
题目描述
某实验室有一条可以视为数轴的直线测试轨道,以及一个沿轨道移动的机器人。每次实验开始时,机器人都静止在原点。
轨道上放置了两面墙,一面位于负坐标,另一面位于正坐标。机器人无法穿过墙,只能在两面墙之间的闭区间内移动。
机器人上有一个按钮。按下按钮后,机器人依次执行以下 $N$ 个阶段。
- 假设第 $i$ 个阶段开始时机器人位于坐标 $X$。它尝试沿数轴向坐标 $X+V_i$ 移动。若 $V_i>0$,则向右移动;若 $V_i
输入格式
输入包含一组或多组测试数据。第一行包含一个整数 $t$,表示测试数据组数($1\le t\le 10^5$)。随后依次给出各组测试数据,每组格式如下。
```text
N
V_1 V_2 ... V_N
Q
W_1 T_1
W_2 T_2
...
W_Q T_Q
```
整数 $N$ 表示每次按下按钮后执行的阶段数($1\le N\le 2\times 10^5$)。对于每个 $i=1,\ldots,N$,整数 $V_i$ 表示第 $i$ 个阶段尝试移动的位移($-10^9\le V_i\le 10^9$,$V_i\ne 0$)。
整数 $Q$ 表示询问次数($1\le Q\le 2\times 10^5$)。对于每个 $i=1,\ldots,Q$,整数 $W_i,T_i$ 分别表示第 $i$ 次询问中原点到每面墙的距离以及按按钮的次数($1\le W_i\le 10^{16}$,$1\le T_i\le 10^{12}$)。
所有测试数据的 $N$ 之和不超过 $4\times 10^5$,$Q$ 之和不超过 $4\times 10^5$。
输出格式
对于每组测试数据,输出 $Q$ 行。第 $i$ 行包含第 $i$ 次询问的答案。
说明/提示
在第一组测试数据中,第 $1$ 次询问会在第 $2$ 和第 $4$ 个阶段于 $-5$ 处发生碰撞,共受到 $2$ 点伤害。第 $2$ 次询问中,两次在 $-9$ 处发生的碰撞都出现在第二次按下按钮之后。
在第二组测试数据中,机器人从未以正速度撞上墙,因此没有受到伤害。