loj#P6884. 「THUPC 2023」总投票数

「THUPC 2023」总投票数

题目背景

各位亲爱的《La Lumière: Scarlet Intense Flame - Adventurous Scarlet -》玩家:

非常荣幸能与您携手度过了这四年的美好时光,衷心感谢大家的支持与陪伴!

现在,我们非常遗憾的宣布,《La Lumière: Scarlet Intense Flame - Adventurous Scarlet -》将于 2023 年 5 月 28 日 15:00 停止运营服务。

停止运营相关时间表如下:

……

题目描述

在关服前,运营发起了一系列投票,调查哪些游戏内容给玩家带来了更深的印象。

作为系列的忠实玩家,你想知道有多少人参加了关服前的投票,但是运营只公开了最终的投票结果:对于一项包含 NN 个选项的投票,选择第 ii 个选项的玩家比例为 PiP_i1iN1\le i\le N)。运营在公布结果时进行了四舍五入,所有的 PiP_i 仅保留到小数点后第 LL 位。假设实际有 KK 位玩家参加了投票,其中有 DiD_i 位玩家选择了第 ii 个选项,则应该有

$$P_i-\frac{1}{2}\times 10^{-L}\le\frac{D_i}{K}< P_i+\frac{1}{2}\times 10^{-L} $$

显然,所有的 DiD_i 必须是非负整数,而 K=i=1NDiK=\sum_{i=1}^N D_i 则必须是正整数。现在,给定 NNPiP_i,请你求出满足 DiD_i 有非负整数解的最小的总投票数 KK

输入格式

输入的第一行包含一个正整数 NN,表示投票的选项总数。保证 1N1001\le N\le 100

接下来 NN 行,每行包括一个 [0,1][0, 1] 中的实数 PiP_i,表示选择第 ii 个选项的玩家比例。保证 i=1NPi=1\sum_{i=1}^N P_i =1,所有 PiP_i 均保留到小数点后第 LL 位,且 1L61\le L\le 6

输出格式

输出一个正整数,表示满足要求的最小总投票数 KK

3
0.166667
0.333333
0.500000

6

最小的总投票数为 66,对应每个选项的投票数为 1,2,31, 2, 3

7
0.041096
0.109589
0.109589
0.164384
0.301370
0.068493
0.205479

73

最小的总投票数为 7373,对应每个选项的投票数为 3,8,8,12,22,5,153, 8, 8, 12, 22, 5, 15

13
0.00155
0.03876
0.01584
0.05189
0.08099
0.06825
0.15658
0.10404
0.02640
0.14332
0.12941
0.15529
0.02768

7766

最小的总投票数为 77667766,对应每个选项的投票数为 $12, 301, 123, 403, 629, 530, 1216, 808, 205, 1113, 1005, 1206, 215$。

数据范围与提示

对于 100%100\% 的数据,保证 1N100,0Pi11\le N\le 100, 0\le P_i\le 1i=1NPi=1\sum_{i=1}^N P_i=1,且 PiP_i 最多统一保留到小数点后 66 位。

题目使用协议

来自 THUPC2023(2023年清华大学学生程序设计竞赛暨高校邀请赛)。

以下『本仓库』皆指 THUPC2023 官方仓库(https://github.com/THUSAAC/THUPC2023

  1. 任何单位或个人都可以免费使用或转载本仓库的题目;

  2. 任何单位或个人在使用本仓库题目时,应做到无偿、公开,严禁使用这些题目盈利或给这些题目添加特殊权限;

  3. 如果条件允许,请在使用本仓库题目时同时提供数据、标程、题解等资源的获取方法;否则,请附上本仓库的 github 地址。