AT_past202303_k.金貨と袋のゲーム

通过率:0%

AC君温馨提醒

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

题目描述

高桥和青木正在进行一个有 NN 轮的游戏。在第 ii 轮(i=1,…,Ni=1,\ldots,N)中,依次进行以下步骤:

  • 如果 i≥2i \geq 2 且高桥在第 (i−1)(i-1) 轮受到惩罚,则本轮直接结束,不再进行以下步骤。
  • 高桥获得 aia_i 枚金币。
  • 高桥执行以下两种操作之一:
    • 将 ⌊ai×t100⌋\left\lfloor \frac{a_i \times t}{100}\right\rfloor 枚金币放入袋中并展示给青木(其中 ⌊x⌋\lfloor x\rfloor 表示不超过 xx 的最大整数)。保证 ⌊ai×t100⌋≥1\left\lfloor \frac{a_i \times t}{100}\right\rfloor \geq 1。
    • 展示一个空袋子给青木。
  • 青木以等概率从 11 到 100100 中随机选择一个整数 xx。
    • 如果 x≤px \leq p,他会检查袋子。如果袋子为空,高桥需要将 ⌊ai×t100⌋\left\lfloor \frac{a_i \times t}{100}\right\rfloor 枚金币放入袋中,并受到惩罚。
    • 如果 x>px > p,青木什么也不做。
  • 高桥获得本轮中除袋中外其余的所有金币。

其中,青木在每一轮的选择都是独立进行的。

高桥将在每一轮选择操作,使所有 NN 轮所得金币总数的期望值 EE 最大。请你求出 EE 的最大值。

输入格式

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

NN tt pp a1a_1 …\ldots aNa_N

输出格式

输出答案。如果你的输出与真实答案的绝对误差或相对误差不超过 10−610^{-6},则视为正确。

输入输出样例

  • 输入#1

    3 10 50
    100 10 300

    输出#1

    384.50000000000000000000
  • 输入#2

    3 1 10
    192 191 190

    输出#2

    570.89999999999997726263
  • 输入#3

    4 17 55
    32 10 77 1000000000

    输出#3

    906500100.00000000000000000000

说明/提示

样例解释 1

以下是高桥获取金币总数期望最大化的一种方案:

  • 第一轮,袋子不放入任何金币。
  • 第二轮,放入指定数量的金币(如果上一轮未受到惩罚)。
  • 第三轮,不放入金币。

样例解释 2

本输入对应的正确答案是 570.9570.9。上面的输出值虽然与此不同,但误差足够小,仍然被认为是正确的。

数据范围

  • 1≤N≤1001 \leq N \leq 100
  • 1≤t,p≤991 \leq t,p \leq 99
  • 1≤ai≤1091 \leq a_i \leq 10^9
  • ⌊ai×t100⌋≥1\left\lfloor \frac{a_i \times t}{100} \right\rfloor \geq 1
  • 所有输入均为整数。

由 ChatGPT 5 翻译

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

首页