P14003 [eJOI 2025] Reactions

题目描述

Nicky 正在进行化学反应性的实验。他准备了 $N$ 个实验,编号为 $0$ 到 $N-1$。现在他需要选择一个起始实验,然后他将执行所有编号不小于所选编号的实验。换言之,若他决定从编号为 $S$ 的实验开始,他将按顺序进行实验 $S, S+1, \ldots, N-1$。 在开始进行起始实验之前,他有一容器溶液,其温度为 $0$ 度。在第 $i$ 个实验($0 \le i \le N-1$)中,他按如下顺序执行两步: 1. 将溶液温度改变一个给定的整数温度值(可以升高、降低任意整数,或保持不变); 2. 进行实验并检查是否发生反应。 已知在第 $i$ 个实验中,温度会改变 $D_i$ 度——若 $D_i>0$ 则升高,若 $D_i

输入格式

The input format is the following: - line 1: a single integer - the value of $N$. - line 2: $N$ integers - $D_0, D_1, \ldots, D_{N-1}$. - line 3: $N$ integers - $T_0, T_1, \ldots, T_{N-1}$.

输出格式

The output format is the following: - line 1: one integer - the return value of the call.

说明/提示

### 示例 1 考虑如下调用: ``` reactions(5, {1, 1, -3, 1, 1}, {1, 3, 5, 1, 2}) ``` 如果 Nicky 选择从编号为 $3$ 的实验开始,溶液温度会变为 $1$,满足该次实验发生反应的条件。下一次实验温度升至 $2$,再次发生反应。由于不可能得到超过 $2$ 次反应,函数应返回 $2$。 ### 示例 2 考虑如下调用: ``` reactions(5, {1, -3, 0, 3, 2}, {0, -2, -1, 0, 3}) ``` 函数应返回 $4$,因为若从编号为 $0$ 的实验开始,Nicky 会在编号为 $0, 1, 3, 4$ 的实验中观测到反应。温度自 $0$ 度起,在每次实验后的温度依次为:$1, -2, -2, 1, 3$。 ### 约束 - $1 \le N \le 500\,000$ - $-10^9 \le D_i \le 10^9$ - $-10^{15} \le T_i \le 10^{15}$ ### 子任务 | 子任务 | 分值 | 依赖子任务 | 附加约束 | | :-: | :-: | :-: | :-: | | 0 | 0 | - | 样例。 | | 1 | 15 | 0 | $N \le 2000$ | | 2 | 15 | 0 | 满足 $D_i