#P10402. 水波

水波

题目背景

「你已经连续学习 44 小时了,快去运动一下吧!」

”可是我这场比赛还没 vp 完……再过 11 小时吧。“

「累了的时候就出去走走,注意劳逸结合。」

”好的。“

新年,壬寅年。在老家龙游的自家门前的池塘打水漂。

「你看,你很缺乏生活经验。你这样当实心球投,当然只能弹一两下就沉水里了啊。」

”唔,居住在城市里,我几乎没怎么见到过池塘……唯一会的,或许只是扔沙包、投实心球罢。“

「最近上映的《长津湖》看过没有?我们老一辈的人,都对这部片子特别有感触。不知你是否留意到伍万里打水漂时的动作?」

”欸,我好像并没观察过。“

「你侧身站在水边,拇指和中指水平拿住瓦片,食指勾住瓦片边,稍弯点身把瓦片用力扔出,用食指让瓦片转起来。这个说着挺容易,但往往要经过大量实践和试验,你才能去亲身感受到最佳的弯的角度,以及手腕处挥动的力度。」

“我尝试一下……欸,至少它一次能弹四五下了!”

「嗯,多给你点时间,你再领悟一下。」

“七,八,九……啊,我弹出十下了!”

「我亦无他,唯手熟尔。」

题目描述

回到杭州后,与同伴交流。

”我从打水漂中得到了一些启发,它们都是沿着我投射方向依次摆成的波纹,并且每个波纹都恰好是一个圆!“

「哈哈,这不是显然吗?」

“是的,但是我突发奇想,编出了一个很有意思的题!”

「哦?说来听听。」

“是这样的!假设我弹出了 nn 下,得到了 nn 个波纹,我希望给每个波纹分配一个半径 rir_i,使得这几个波纹的面积和最大。”

「那不是可以无限大吗?」

“哎呀,听我说完!如果两个波纹碰到了一起,波纹会叠加,就失去了它本身的美感。所以我限制两两波纹不交。”

「听着挺有意思。不失为一道好题。」

形式化题意

在一根数轴上给定 nn 个圆心 xix_i,你需要给每个圆分配一个实数半径 ri (ri0)r_i\ (r_i\ge 0),使得:

  • 对于 i[1,n)\forall i\in [1,n)xi+rixi+1ri+1x_i+r_i\le x_{i+1}-r_{i+1}

试最大化 i=1nπri2\sum\limits_{i=1}^{n} \pi r_i^2 的值。为方便起见,你只需要输出最大值除以 π\pi 的值。

输入描述

第一行,输入一个数 nn

第二行,输入 nn 个数,第 ii 个数表示第 ii 个圆的圆心。

输出描述

输出最大的面积和。你只需要输出最大值除以 π\pi 的值。

可以证明,最优解一定是整数。

样例输入 1

3
0 2 5

样例输出 1

13

样例解释 1

分配 r1=2,r2=0,r3=3r_1=2,r_2=0,r_3=3,此时面积和为 22+02+32=132^2+0^2+3^2=13

样例输入 2

4
0 1 3 6

样例输出 2

10

样例输入 3

5
5 7 12 13 15

样例输出 3

9

下文文件中:

  • ex_wave4 满足子任务 3 的性质;
  • ex_wave5 满足子任务 4 的性质;
  • ex_wave6 满足子任务 5 的性质;
  • ex_wave7 满足子任务 6 的性质。

数据范围

本题采用 subtask 捆绑测试。

对于 100%100\% 的数据,$2\le n\le 3\times 10^5,0\le x_1\le x_2\le \cdots \le x_n\le 10^9$。

子任务编号 nn 特殊性质 分值
1 8\le 8 0xi100\le x_i\le 10 10
2 20\le 20 /
3 2000\le 2000 30
4 / xixi1x_i-x_{i-1} 均相等 10
5 xixi1x_{i}-x_{i-1} 只有 20\le 20 种取值 20
6 /