题库练习 [ABC128F] Frog Jump
← 上一题 下一题 →

A7661 | [ABC128F] Frog Jump

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

有一个无限延伸的池塘,可以看作是一条数轴。在这个池塘上漂浮着 $N$ 朵莲花,分别位于坐标 $0, 1, 2, \ldots, N-2, N-1$。

你一开始站在坐标 $0$ 的莲花上。你决定按照以下步骤进行游戏:

1. 选择正整数 $A, B$。初始得分为 $0$。
2. 设当前位置为 $x$,则令 $y = x + A$。消除 $x$ 处的莲花,并移动到 $y$。

- 如果 $y = N-1$,则游戏结束。
- 否则,如果 $y$ 处有莲花,则得分增加 $s_y$。
- 如果 $y$ 处没有莲花,则你会溺水,得分减少 $10^{100}$,游戏结束。
3. 设当前位置为 $x$,则令 $y = x - B$。消除 $x$ 处的莲花,并移动到 $y$。

- 如果 $y = N-1$,则游戏结束。
- 否则,如果 $y$ 处有莲花,则得分增加 $s_y$。
- 如果 $y$ 处没有莲花,则你会溺水,得分减少 $10^{100}$,游戏结束。
4. 返回步骤 2。

你希望最终得分尽可能大。请问最优选择 $A, B$ 时,最终得分最大是多少?

输入格式

输入通过标准输入给出,格式如下:

> $N$ $s_0$ $s_1$ $\ldots$ $s_{N-1}$

输出格式

请输出最优选择 $A, B$ 时的最大最终得分。

输入输出样例

输入 #1
5
0 2 5 1 0
输出 #1
3
输入 #2
6
0 10 -7 -4 -13 0
输出 #2
0
输入 #3
11
0 -4 0 -99 31 14 -15 -39 43 18 0
输出 #3
59
C++ 编辑器
输入
输出