#AT1411. C - Alchemist

C - Alchemist

C - 炼金术士

得分: $300$ 分

问题描述

你有一个锅和 $N$ 种原料。每种原料都有一个实数参数称为 value,第 $i$ 种原料($1 \leq i \leq N$)的值为 $v_i$。

当你将两种原料放入锅中时,它们会消失并形成一种新的原料。新原料的值为被消耗的原料的值之和除以 $2$,并且你可以将这种原料再次放入锅中。

当你以这种方式组合原料 $N-1$ 次后,你会得到一种原料。找出这种原料可能的最大值。

约束条件

  • $2 \leq N \leq 50$
  • $1 \leq v_i \leq 1000$
  • 输入中的所有值均为整数。

输入

从标准输入读入数据,格式如下:

NN

v1v_1 v2v_2 \ldots vNv_N

输出

打印一个十进制数(或整数),表示剩下的最后一种原料可能的最大值。

如果你的输出与标准输出的绝对误差或相对误差不超过 $10^{-5}$,则判定为正确。

示例 1

2
3 4
3.5

如果你从两种原料开始,唯一的选择是将它们都放入锅中。原料的值为 $3$ 和 $4$,组合后的原料的值为 $(3 + 4) / 2 = 3.5$。

打印 3.500013.49999 等均可被接受。

示例 2

3
500 300 200
375

这次你从三种原料开始,你可以选择在第一次合成时使用哪种原料。有三种可能的选择:

  • 使用值为 $500$ 和 $300$ 的原料合成值为 $(500 + 300) / 2 = 400$ 的新原料。下一次合成时使用这种原料和值为 $200$ 的原料,结果得到值为 $(400 + 200) / 2 = 300$ 的原料。
  • 使用值为 $500$ 和 $200$ 的原料合成值为 $(500 + 200) / 2 = 350$ 的新原料。下一次合成时使用这种原料和值为 $300$ 的原料,结果得到值为 $(350 + 300) / 2 = 325$ 的原料。
  • 使用值为 $300$ 和 $200$ 的原料合成值为 $(300 + 200) / 2 = 250$ 的新原料。下一次合成时使用这种原料和值为 $500$ 的原料,结果得到值为 $(250 + 500) / 2 = 375$ 的原料。

因此,剩下的最后一种原料可能的最大值为 $375$。

打印 375.0 等均可被接受。

示例 3

5
138 138 138 138 138
138