#ATarc128c. [ARC128C] Max Dot

[ARC128C] Max Dot

题目描述

给定整数 NNMMSS,以及一个长度为 NN 的整数序列 A=(A1,A2,,AN)A=(A_1,A_2,\cdots,A_N)

请构造一个长度为 NN 的非负实数序列 x=(x1,x2,,xN)x=(x_1,x_2,\cdots,x_N),使其满足以下所有条件:

  • 0x1x2xNM0 \leq x_1 \leq x_2 \leq \cdots \leq x_N \leq M
  • 1iNxi=S\sum_{1 \leq i \leq N} x_i = S

定义 xx 的得分为 1iNAi×xi\sum_{1 \leq i \leq N} A_i \times x_i。请你求出 xx 的得分可能取得的最大值。

输入格式

输入以如下格式从标准输入给出。

NN MM SS A1A_1 A2A_2 \cdots ANA_N

输出格式

请输出答案。如果你的答案的绝对误差或相对误差在 10610^{-6} 以内,将被判定为正确。

样例 1

输入

3 2 3
1 2 3

输出

8.00000000000000000000

样例 2

输入

3 3 2
5 1 1

输出

4.66666666666666666667

样例 3

输入

10 234567 1000000
353239 53676 45485 617014 886590 423581 172670 928532 312338 981241

输出

676780145098.25000000000000000000

说明/提示

限制条件

  • 1N50001 \leq N \leq 5000
  • 1M1061 \leq M \leq 10^6
  • 1Smin(N×M,106)1 \leq S \leq \min(N \times M,10^6)
  • 1Ai1061 \leq A_i \leq 10^6
  • 输入的所有数值均为整数

样例解释 1

x=(0,1,2)x=(0,1,2) 是最优的。

样例解释 2

x=(2/3,2/3,2/3)x=(2/3,2/3,2/3) 是最优的。

由 ChatGPT 4.1 翻译