AT_scpc2026_div2_e Opening Magical Box
题目描述
Lulu 发现了一个装有宝藏的魔法箱。箱子上被施加了 $N$ 种不同类型的魔法咒语,每种类型只各有一种,只有以正确的顺序解除所有咒语才能打开箱子。Lulu 作为天才魔法师,已经辨认出了箱子上的全部 $N$ 种咒语类型,但并不知道需要解除咒语的正确顺序。
为了打开箱子,Lulu 尝试了如下操作过程:
1. Lulu 在剩余的 $N$ 个咒语中选择一个还未解除的咒语并尝试解除。当尝试解除第 $i$ 种咒语时,需要消耗 $M_i$ 点魔法力。
2. 如果她尝试解除的咒语正好是此时应当解除的那一个,则解除成功;否则,箱子会恢复到最初的状态(所有 $N$ 个咒语都恢复),Lulu 可以立刻得知刚才是否解除了正确的咒语。所需的解除顺序始终不变。
3. 当所有 $N$ 个咒语都被按顺序成功解除后,箱子就会打开。
给定 $N$ 及每个咒语消耗的魔法力 $M_i$,请计算 Lulu 若使用最优策略打开箱子时,期望总共消耗的魔法力是多少。正确的解除顺序有 $N!$ 种可能,并且这些顺序都是等概率的。
输入格式
输入从标准输入给出,格式如下:
> $N$ $M_1$ $M_2$ $\dots$ $M_N$
输出格式
输出 Lulu 期望消耗的总魔法力。允许的绝对误差或相对误差不超过 $10^{-6}$。
说明/提示
### 数据范围
- $1 \leq N \leq 100\,000$
- $1 \leq M_i \leq 100\,000$
- 所有输入数字均为整数。
由 ChatGPT 5 翻译