P15111 群星
题目背景
你和一群朋友一起颓废。
题目描述
你打开了群星,开了一局游戏,打开看海模式。游戏自动生成了 $n$ 个文明,其中第 $i$ 个文明初始国力排名为 $i$ 。你们决定按照如下方式进行看海。
游戏分为 $k$ 个世纪,其中第 $i$ 个世纪会发生 $a_i$ 场战争,每一场战争会在 $n \choose 2$ 对不同文明对中随机选一对,交换它们的排名。每个世纪刚开始时,大家会进行一次选文明操作,具体来说因为你是主人,你可以先选择是否在这回合选文明,如果是,则你选择任意一个尚未被选择的文明;否则恰有一个朋友会选择目前还没被选择的文明里排名第一的文明。文明选择完后不能更改(即你只可以在一个世纪初选择文明)。
讨论完规则之后,你对于选文明的最优策略很感兴趣。因此你打算编写程序对于所有 $i$ 计算你如果在第 $i$ 个世纪初选择文明,选择的文明最终期望的排名最小可以是多少。因为你不喜欢取模,你的答案只需要保留五位小数输出(多输出也没事)。
输入格式
第一行两个数字 $n,k$。
第二行 $k$ 个数,第 $i$ 个数代表 $a_i$ 。
输出格式
$k$ 行,每行输出内容如题意所述。
说明/提示
**本题采用捆绑测试和 Special Judge,你的答案和标准答案差距不大于 $10^{-5} $ 即可。**
对于 $20\%$ 的数据,满足 $n ,k , a_i \leq 3$
对于 $60\%$ 的数据,满足 $n,k \leq 50$,$\sum a_i \leq 10000$
对于 $100\%$ 的数据,满足 $n \leq 50 , k \leq 50 , 0 \leq a_i \leq 10^7$,$k \leq n$