时间限制:C/C++/Rust/Pascal 2秒,其他语言4秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

在坐标轴 1 到 n 的 n 个位置上
有长度为 a_i 的 n 根木棒
其下会围成一个不规则多边形(详见样例)
你可以多次交换不同相邻的木棒,求其下最大覆盖面积 S

输入描述:

第一行输入 n 
接下来输入一行包括 n 个正整数 a_i
1\le n \le 2× 10^6; 1\le a_i \le 2× 10^6

输出描述:

请输出 n 根木棒的最大围成面积 S
为了输出方便,请四舍五入后保留两位小数
示例1

输入

复制
3
3 1 2

输出

复制
4.50

说明


交换第1、2根木棒,变成 [1, 3, 2]
面积从: (3+1)*1/2+(1+2)*1/2=3.5
变为:(1+3)*1/2+(3+2)/2=4.5
不存在更大的面积
示例2

输入

复制
2
5 5

输出

复制
5.00
示例3

输入

复制
1
3

输出

复制
0.00