#8967. 「洛谷 P12061」[THUPC 2025 决赛] 喜爱之钥 暂未评定

时间限制:2000 ms 内存限制:512 MiB 标准输入输出
题目类型:传统 评测方式:无测试数据
上传者: root

题目描述

玩具箱承载着幼时的欢乐。喜爱、软弱、苦恼、希望……当沉睡的玩具箱再次被打开时,重见天日的宝物将会带来怎样的惊喜?

M 就有一个这样的玩具箱,那是身为宝石设计师的母亲送给她的生日礼物。精心打磨的宝石像夜空中的繁星一般点缀着玩具箱,而玩具箱上更有造型各异的 把锁严防死守着宝贝女儿的小宇宙:花朵发夹、羽毛笔、字母 M 造型的气球……每一件都浓缩着 M 的回忆。

前几天,M 在整理房间时翻出了这个玩具箱,以及一串专门为这个玩具箱打造的钥匙。钥匙串上共挂着 把钥匙,其中有 把钥匙,每把分别可以打开其中一把锁;而剩下的 把钥匙仅仅是增加暴力破解难度的干扰项。为了方便记忆,M 的母亲在设计钥匙时,给每一把钥匙镶嵌了一颗不同的宝石,可惜 M 已经忘记了正确的对应关系。

“……所以我只好向大家求助了。” M 说着把手里的钥匙串摆在了桌面上。

K 拿起了钥匙串仔细端详。“仅凭外表似乎无法推断出任何有用的信息,恐怕只能逐把尝试。”

虽然大家都愿意帮助 M,但是面对这么多把钥匙,不免感到无从下手。看着大家的反应,T 提议:“要不我们来玩个游戏吧。每个人按顺序试一把钥匙,最终打开最多锁的人最厉害。”

包括 M 在内,总共有 个人按相同的顺序轮流尝试解锁玩具箱,直到 把锁都被打开。每人每次操作时只选择一把钥匙,且只用这把钥匙试着打开其中一把锁。为了尽快打开玩具箱,所有人的策略都是尝试能最大化这次选择的钥匙打开这次选择的锁的概率的组合;如果有多种概率最大的钥匙和锁的组合,则等概率地选取任意一种这样的组合。显然,如果之前成功用一把钥匙打开了一把锁,那么之后所有人在尝试的时候,都不会再选择相同的钥匙或者相同的锁。

假设在最开始的时候,任意一把钥匙打开任意一把锁的概率都相等。如果每个人都能根据之前尝试的所有钥匙和锁的组合,选择最优的组合进行尝试,那么每个人成功解锁的期望次数分别是多少?

输入格式

输入仅一行,包括三个非负整数 ,分别表示参加游戏的人数,锁的数量和假钥匙的数量。

输出格式

输出一行 个非负整数 ,其中 表示按顺序第 个人成功解锁的期望次数。显然 是有理数;不妨假设其化为最简分式后的形式为 (即其中 互质),则 为满足 的整数解。可以证明,在本题数据范围下,各 存在且唯一。

样例

样例输入 1

复制3 1 4

样例输出 1

复制800000006 800000006 400000003

样例输入 2

复制3 2 0

样例输出 2

复制500000004 1 500000004

样例输入 3

复制25 2 5

样例输出 3

复制142857144 166666668 615646263 639455787 234126986 257936510 195918369 502040820 478316330 81264173 190523433 471438023 23809524 0 0 0 0 0 0 0 0 0 0 0 0

样例输入 4

复制4 102 9

样例输出 4

复制568832210 85779764 969938175 375449967

数据范围与提示

样例 #1 解释

当只有 把锁时,每个人的策略都是随机选择一把尚未有人试过的钥匙开锁。由于总共有 把钥匙,每个人打开门的概率分别为 ,这也是每个人成功解锁的期望次数。

样例 #2 解释

此时有 把锁和 把钥匙,每把钥匙恰好可以打开其中一把锁。由于没有任何已知信息,第 个人只能随机选择一把钥匙和一把锁,此时成功解锁的概率为

  • 如果第 个人打开了这把锁,那么第 个人可以直接用另外一把钥匙打开另外一把锁。

  • 如果第 个人没有打开这把锁,那么第 个人选择的钥匙一定对应另一把锁,且另一把钥匙一定可以打开第 个人选择的锁。根据这个信息,第 个人和第 个人可以各打开一把锁。

综上所述,每个人成功解锁的期望次数分别为

来源与致谢

来自 THUPC2025(2025 年清华大学学生程序设计竞赛暨高校邀请赛)决赛。感谢 THUSAA 的提供的题目。

数据、题面、标程、题解等请参阅 THUPC 官方仓库 https://thusaac.com/public