P16511 [GKS 2015 #C] gFiles
题目描述
Alien 科技公司 G 有一个非常古老的文件传输工具,至今仍在使用。在该工具运行时,它会通过显示状态更新来让用户放心,这些更新包含当前已传输文件的百分比以及已传输文件的数量。运行过程中的状态更新可能如下所示:
$20\%$ $|==>>-------|$ $1$ 个文件已传输
$100\%$ $|==========|$ $5$ 个文件已传输
但该百分比并不精确;它只是截去了小数部分(即向下取整到最近且不超过它的 $1\%$)。也就是说,$1.2\%$ 和 $1.7\%$ 都会显示为 $1\%$。
一些用户可能希望知道确切的文件总数,因此你希望修改该工具,使得状态更新变为如下形式:
$20\%$ $|==>>-------|$ $1$ 个文件已传输(共 $5$ 个)
$100\%$ $|==========|$ $5$ 个文件已传输(共 $5$ 个)
但你意识到,有可能无法知道文件的数量。给定工具显示的状态更新,你要么计算出文件的总数,要么确定无法做到(即文件总数有多种可能的取值)。状态更新并不保证按固定间隔出现,也不保证在每次文件传输时都出现。
输入格式
第一行包含一个整数 $T$,表示测试用例的数量。接下来是 $T$ 个测试用例。每个测试用例包含一行,给出一个整数 $N$,即工具输出的状态更新的条数,随后是 $N$ 行,格式为 $P_i \ K_i$,其中 $P_i$ 和 $K_i$ 为整数,分别表示在过程中某个时刻的百分比和已传输文件的数量。这些更新按时间顺序列出——也就是说,在整个测试用例中,$P_i$ 值和 $K_i$ 值都是非递减的。
输出格式
对于每个测试用例,输出一行,以 “Case #x: y” 开头,其中 $x$ 是测试用例编号(从 $1$ 开始),$y$ 要么是文件的总数,要么当该数值不唯一时为 $-1$。
说明/提示
### 限制
$1 \le T \le 50$。
$1 \le N \le 100$。
$0 \le P_i \le 100$
**小数据集(测试集 1 - 可见)**
$0 \le K_i \le 2000$
保证答案不超过 $2000$。
**大数据集(测试集 2 - 隐藏)**
$0 \le K_i \le 10^{15}$
保证答案不超过 $10^{15}$。
翻译由 DeepSeek V4 Pro 完成