#L6884. 「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 - \frac12 \times 10^{-L} \le \frac{D_i}{K} < P_i + \frac12 \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


样例 1

输入:

3
0.166667
0.333333
0.500000

输出:

6

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


样例 2

输入:

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


样例 3

输入:

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\% 的数据:

  • 1N1001\le N\le 100
  • 0Pi10\le P_i\le 1
  • i=1NPi=1\sum_{i=1}^N P_i=1
  • PiP_i 最多统一保留到小数点后 66 位。