loj#P6433. 「PKUSC2018」最大前缀和
「PKUSC2018」最大前缀和
题目描述
小 C 是一个算法竞赛爱好者,有一天小 C 遇到了一个非常难的问题:求一个序列的最大子段和。
但是小 C 并不会做这个题,于是小 C 决定把序列随机打乱,然后取序列的最大前缀和作为答案。
小 C 是一个非常有自知之明的人,他知道自己的算法完全不对,所以并不关心正确率,他只关心求出的解的期望值,现在请你帮他解决这个问题,由于答案可能非常复杂,所以你只需要输出答案乘上 后对 取模的值,显然这是个整数。
注:最大前缀和的定义:,的最大值。
输入格式
第一行一个正整数 ,表示序列长度。
第二行 个数,表示原序列 ,第 个数表示 。
输出格式
输出一个非负整数,表示答案。
2
-1 2
3
数据范围与提示
数据范围
对于的数据,有。
对于的数据,有。
另有的数据,满足中最多只有一个负数。
另有的数据,满足。
对于的数据,满足,。