#arc128c. [arc128_c]Max Dot

[arc128_c]Max Dot

問題文

整数 N,M,SN,M,S,及び長さ NN の整数列 A=(A1,A2,cdots,AN)A=(A_1,A_2,\\cdots,A_N) が与えられます.

次の条件をすべて満たす長さ NN の非負実数x=(x1,x2,cdots,xN)x=(x_1,x_2,\\cdots,x_N) を作ることを考えます.

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

ここで,xx のスコアを sum1leqileqNAitimesxi\\sum_{1 \\leq i \\leq N} A_i \\times x_i と定義します. xx のスコアとしてありうる最大の値を求めてください.

制約

  • 1leqNleq50001 \\leq N \\leq 5000
  • 1leqMleq1061 \\leq M \\leq 10^6
  • 1leqSleqmin(NtimesM,106)1 \\leq S \\leq \\min(N \\times M,10^6)
  • 1leqAileq1061 \\leq A_i \\leq 10^6
  • 入力される値はすべて整数である

入力

入力は以下の形式で標準入力から与えられる.

NN MM SS A1A_1 A2A_2 cdots\\cdots ANA_N

出力

答えを出力せよ. 絶対誤差または相対誤差が 10610^{-6} 以内であれば,正解と判定される.


入力例 1

3 2 3
1 2 3

出力例 1

8.00000000000000000000

x=(0,1,2)x=(0,1,2) とするのが最適です.


入力例 2

3 3 2
5 1 1

出力例 2

4.66666666666666666667

x=(2/3,2/3,2/3)x=(2/3,2/3,2/3) とするのが最適です.


入力例 3

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

出力例 3

676780145098.25000000000000000000