AT_abc475_c [ABC475C] Walk the Line

题目描述

有 $N$ 个城镇排成一条直线。城镇编号为 $1, 2, \ldots, N$,对于每个满足 $1 \leq i \leq N-1$ 的整数 $i$,城镇 $i$ 与城镇 $i+1$ 之间通过一条长度为 $A_i$ 的道路相连。 你最初在编号为 $S$ 的城镇。你可以反复使用道路在相邻的两个城镇间移动。 请找出在总行驶距离不超过 $L$ 的前提下,最多能经过多少个不同的城镇。这里,初始所在的城镇 $S$ 也计算在内,同一城镇多次到访只计为经过一次。

输入格式

输入由标准输入给出,格式如下: > $N$ $S$ $L$ $A_1$ $A_2$ $\ldots$ $A_{N-1}$

输出格式

输出答案。

说明/提示

### 样例解释 1 你最初在编号为 $3$ 的城镇。如果以 $3 \to 2 \to 3 \to 4 \to 5$ 的顺序移动,经过的总距离为 $2 + 2 + 4 + 1 = 9$,所经过的城镇为 $2, 3, 4, 5$,即一共经过四个城镇。 在总行驶距离不超过 $10$ 的情况下,不可能经过五个或更多的不同城镇,所以本例的答案为 $4$。 ### 数据范围 - $2 \leq N \leq 8000$ - $1 \leq S \leq N$ - $0 \leq L \leq 10^{18}$ - $1 \leq A_i \leq 10^9$ - 所有输入数据均为整数。 由 ChatGPT 5 翻译