「一本通 5.6 练习 3」特别行动队

「一本通 5.6 练习 3」特别行动队

暂无测试数据。

题目描述

原题来自:APIO 2010

你有一支由 \(n\) 名预备役士兵组成的部队,士兵分别编号为 \(1\dots n\),要将他们拆分成若干特别行动队调入战场。出于默契的考虑,同一支特别行动队中队员的编号应该连续,即为形如 \((i,\) \(i + 1,\) \(\dots,\) \(i + k)\) 的序列。 编号为 \(i\) 的士兵的初始战斗力为 \(x_i\),一支特别行动队的初始战斗力 \(x\) 为队内士兵初始战斗力之和,即 \(x = x_i + x_{i+1} +\) \(\dots + x_{i+k}\) 。

通过长期的观察,你总结出一支特别行动队的初始战斗力 \(x\) 将按如下经验公式修正为 \(x':x'= ax^2+bx+c\) ,其中 \(a, b, c\) 是已知的系数\((a < 0)\)。 作为部队统帅,现在你要为这支部队进行编队,使得所有特别行动队修正后战斗力之和最大。试求出这个最大和。

例如,你有 4 名士兵, \(x_1 = 2,\) \(x_2 = 2,\) \(x_3 = 3,\) \(x_4 = 4\) 。经验公式中的参数为 \(a = –1,\) \(b = 10,\) \(c = –20\)。此时,最佳方案是将士兵组成 \(3\) 个特别行动队:第一队包含士兵 \(1\) 和士兵 \(2\),第二队包含士兵 \(3\),第三队包含士兵 \(4\)。特别行动队的初始战斗力分别为 \(4,\) \(3,\) \(4\),修正后的战斗力分别为 \(4,\) \(1,\) \(4\)。修正后的战斗力和为 \(9\),没有其它方案能使修正后的战斗力和更大。

输入格式

输入由三行组成。

第一行包含一个整数 \(n\),表示士兵的总数。

第二行包含三个整数 \(a, b, c\),经验公式中各项的系数。

第三行包含 \(n\) 个用空格分隔的整数 \(x_1,\) \(x_2,\) \(\dots,\) \(x_n\) ,分别表示编号为 \(1,\) \(2,\) \(\dots,\) \(n\) 的士兵的初始战斗力。

输出格式

输出一个整数,表示所有特别行动队修正后战斗力之和的最大值。

样例数据

样例输入

4
-1 10 -20
2 2 3 4

样例输出

9

限制与提示

\(20\%\) 的数据中,\(n \le 1000\);

\(50\%\) 的数据中,\(n \le 10^4\);

\(100\%\) 的数据中,\(1 \le n \le 10^6,\ –5 \le a \le –1,\ |b|,|c| \le 10^7,\ 1 \le x_i \le 100\)。

信息

难度
(无)
分类
(无)
标签
(无)
递交数
0
已通过
0
通过率
?
上传者

相关

在下列训练计划中:

信息学奥赛一本通提高篇-题库