#P15789. [JAG 2025 Summer Camp #3] Broken Scale
[JAG 2025 Summer Camp #3] Broken Scale
说明
你是 Jag 航空集团的一名机场接待员。这里有 位乘客,你已从每位乘客那里收到了一件行李。根据值机记录,你知道第 位乘客的行李重量为 千克。
然而,你忘记给行李贴上标签了。
如果你随机分配标签,那么为所有行李贴上正确标签的概率是 ,这太低了。在思考如何提高这个概率时,你在仓库里发现了一台有点故障的电子秤。
经过一番调查,你发现当物品放在这台秤上时,它会显示不超过实际总重量的 (以千克为单位)中的最大值。这里的 是一个给定的整数,且 。
你可以将任意非空子集的行李放在秤上,并且可以重复此操作任意多次。假设你采取最优策略,请找出为所有行李贴上正确标签的最大概率,并将答案对 取模后输出。
什么是模 下的概率?
可以证明,所求的概率总是有理数。在本问题的约束下,还可以证明,当用两个互质的整数 和 将该值表示为 时,恰好存在一个整数 满足 且 。请找出这个 。
输入格式
输入包含多个测试用例。
第一行包含一个整数 (),表示测试用例的数量。
接下来是 个测试用例。每个测试用例的格式如下。
$$\begin{aligned} & N \ B \\ & A_1 \ A_2 \ \ldots \ A_N \end{aligned}$$对于每个测试用例,第一行包含两个整数 ()和 (),分别表示行李的数量和电子秤的参数 。
第二行包含 个整数 (),表示第 位乘客的行李重量。
此外,所有测试用例的 的总和不超过 。
输出格式
对于 个测试用例,逐行输出答案。对于每个测试用例,输出在最优策略下为所有行李贴上正确标签的最大概率(对 取模后的值)。
3
3 3
9 15 17
5 23
41 41 41 41 41
14 10
101 102 103 104 105 106 107 108 109 110 111 112 113 114
499122177
856826403
314148269
提示
在第一个测试用例中,如果你每次只放一件行李,秤总是显示 (千克),因此你无法区分它们中的任何一个。但是,如果你每次放两件行李,只有组合 会得到 (千克)。因此,此时没有放在秤上的那件行李必定是标签为 ( 千克)的那件。由于标签为 和 的行李无法通过任何称量序列区分,所以最大概率为 。
:::align{center}
:::
翻译由 DeepSeek V3.2 完成
京公网安备 11011102002149号