#9358. 小笼包(洛谷 - P2808)
小笼包(洛谷 - P2808)
说明
JOI 同学点的小笼包套餐,由馅料不同的 N 个小笼包组成。N 个小笼包等间隔排成一列,编号为 1 到 N。第 i 个小笼包与第 j 个小笼包之间的距离是绝对值 ∣i−j∣。 JOI 同学按照顺序吃小笼包。最初,所有的小笼包的美味度都是 0。吃第 i 个小笼包时,汤汁向周围飞散,与第 i 个小笼包距离 Di 以下的小笼包都淋上了汤汁,而被淋上汤汁的小笼包的美味度会增加 Ai。也就是说,吃第 i 个小笼包的时候,第 j 个小笼包 (1≤j≤N 并且 i−Di≤j≤i+Di) 还没有吃到的话,第 j 个小笼包的美味度就增加 Ai。
JOI 同学要在吃小笼包的顺序上下功夫,让吃的小笼包的美味度的合计最大化。
输入格式
输入共 3 行。
第 1 行是 1 个整数 N。
第 2 行是 N 个整数 D1,D2,...,DN(0≤Di≤7),以空格分隔。
第 3 行是 N 个整数 A1,A2,...,AN(0≤Ai≤1000),以空格分隔。
输出格式
共 1 行,输出 JOI 同学吃的小笼包的美味度的合计最大值。
5
1 0 1 1 2
0 2 6 3 4
20
提示
样例 1 的说明:以第 5→ 第 3→ 第 1→ 第 2→ 第 4 的顺序吃的话,美味度合计为 20,因为美味度超过 20 的吃法是不存在的,所以这是最好的。
本题是 2014 年日本信息学奥林匹克(JOI)预选第 6 题。
原题链接