AT_arc122_b.[ARC122B] Insurance

普及-

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

すぬけ君占卜了明天的运势。结果显示,在 NN 个场景中,将等概率发生其中一个,在第 ii 个场景下,他会损失 AiA_i 日元。

因此,すぬけ君决定今天购买保险。如果他向保险公司支付 xx 日元,当他损失 AiA_i 日元时,将获得 min⁡(Ai,2x)\min(A_i,2x) 日元的补偿。这里,xx 可以选择任意非负实数。

すぬけ君希望最小化自己最终损失金额(=x+Ai−min⁡(Ai,2x)=x+A_i-\min(A_i,2x))的期望值。请你求出这个最小期望值。

输入格式

输入通过标准输入给出,格式如下:

NN A1A_1 A2A_2 ⋯\cdots ANA_N

输出格式

请输出答案。如果绝对误差或相对误差不超过 10−610^{-6},则判定为正确。

输入输出样例

  • 输入#1

    3
    3 1 4

    输出#1

    1.83333333333333333333
  • 输入#2

    10
    866111664 178537096 844917655 218662351 383133839 231371336 353498483 865935868 472381277 579910117

    输出#2

    362925658.10000000000000000000

说明/提示

限制条件

  • 1≤N≤1051 \leq N \leq 10^5
  • 1≤Ai≤1091 \leq A_i \leq 10^9
  • 输入的所有数值均为整数

样例解释 1

选择 x=1.5x=1.5 是最优的。支付 1.51.5 日元后,以下 33 个场景等概率发生:

  • 场景 11:损失 33 日元后,获得 min⁡(3,2x)=3\min(3,2x)=3 日元补偿。最终损失金额为 x+A1−min⁡(A1,2x)=1.5+3−3=1.5x+A_1-\min(A_1,2x)=1.5+3-3=1.5 日元。
  • 场景 22:损失 11 日元后,获得 min⁡(1,2x)=1\min(1,2x)=1 日元补偿。最终损失金额为 x+A2−min⁡(A2,2x)=1.5+1−1=1.5x+A_2-\min(A_2,2x)=1.5+1-1=1.5 日元。
  • 场景 33:损失 44 日元后,获得 min⁡(4,2x)=3\min(4,2x)=3 日元补偿。最终损失金额为 x+A3−min⁡(A3,2x)=1.5+4−3=2.5x+A_3-\min(A_3,2x)=1.5+4-3=2.5 日元。

因此,损失金额的期望为 (1.5+1.5+2.5)/3=1.833333⋯(1.5+1.5+2.5)/3=1.833333\cdots。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页