P10914 [蓝桥杯 2024 国 B] 跳石头
题目描述
小明正在和朋友们玩跳石头的小游戏,一共有 $n$ 块石头按 $1$ 到 $n$ 顺序排成一排,第 $i$ 块石头上写有正整数权值 $c_i$。
如果某一时刻小明在第 $j$ 块石头,那么他可以选择跳向第 $j + c_j$ 块石头(前提 $j + c_j \le n$)或者跳向第 $2j$ 块石头(前提 $2j \le n$),没有可跳跃的目标时游戏结束。
假如小明选择从第 $x$ 块石头开始跳跃,如果某块石头**有可能**被小明经过(“经过” 指存在某一时刻小明在这个石头处),则将这块石头的权值纳入得分集合 $S_x$,那么小明从第 $x$ 块石头开始跳跃的得分为 $|S_x|$。
比如如果小明从第 $x$ 块石头出发,所有可能经过的石头上的权值分别为 $5,3,5,2, 3$,那么 $S_x = \{5, 3, 2\}$ 得分为 $|S_x| = 3$。小明可以任选一块石头开始跳跃,请求出小明最多能获得的分数。
输入格式
无
输出格式
无
说明/提示
**【样例说明】**
从第一块石头出发得分最多,路径有以下几种:
1. $1$ 号 $\to 5$ 号:选择从 $1$ 号跳到 $1 + c_1=5$ 号。
2. $1$ 号 $\to 2$ 号 $\to 5$ 号:第一次选择从 $1$ 号跳到 $2 \times 1=2$ 号,第二次选择从 $2$ 号跳到 $2 + c_2 = 5$ 号。
3. $1$ 号 $\to 2$ 号 $\to 4$ 号:第一次选择从 $1$ 号跳到 $2 \times 1=2$ 号,第二次选择从 $2$ 号跳到 $2 \times 2 = 4$ 号。
所以所有可能经过的石头的权值的集合为 $S_1 = \{c_1, c_2, c_4, c_5\} = \{4, 3, 2, 1\}$,得分为 $|S_1| = 4$。
**【评测用例规模与约定】**
对于 $20\%$ 的评测用例,保证 $n \le 20$。
对于 $100\%$ 的评测用例,保证 $n \le 40000$,$c_i \le n$。