CF2089C1.Key of Like (Easy Version)
提高+/省选-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
这是该问题的简单版本。两个版本之间的区别在于,在这个版本中保证 $$k=0$$。只有当你解决了该问题的所有版本时才能进行 hack。
玩具盒如同装满童年欢愉的冰箱。像脆弱、挣扎、希望……当这样的沉睡者被重新唤醒时,会有什么样的惊喜等待?
M 从母亲那里收到了这个玩具盒作为生日礼物。一位珠宝设计师必定会不遗余力地装饰这件无价杰作:用精美造型的宝石点缀出星空般的天穹。此外,$$l$$ 把独特的锁守护着可爱女儿的微型宇宙:一枚花朵造型的发夹、一支磨损的羽毛笔、一个 M 字母形状的气球……每件物品都封存着珍贵的瞬间。
几天前,M 在整理卧室时重新发现了玩具盒,以及一个专为它设计的钥匙环。钥匙环上挂着 $$(l+k)$$ 把钥匙,其中 $$l$$ 把钥匙能对应地打开 $$l$$ 把锁中的一把,而另外 $$k$$ 把钥匙只是用于防止暴力破解的仿制品。为了提醒对应关系,M 的母亲为每把钥匙镶嵌了不同类型的宝石。然而,流逝的时光已让 M 的记忆逐渐模糊。
"……所以只能拜托大家了。"M 说着将钥匙环放在桌上。
K 拿起钥匙仔细端详。"这些钥匙的外观无法提供有用信息。恐怕我们必须逐一尝试。"
虽然大家都愿意帮助 M,但没有人有头绪。观察着众人的反应,T 提议:"我们来玩个游戏吧。大家轮流尝试钥匙,最终打开最多锁的人最厉害。"
包括 M 在内的 $$n$$ 名成员将按固定顺序轮流尝试解锁,直到所有 $$l$$ 把锁都被打开。每轮操作中,当前成员只会选择一把钥匙并在恰好一把锁上进行测试。为了尽快打开玩具盒,每位成员都会选择能最大化成功匹配概率的钥匙与锁组合。若存在多个这样的组合,成员会以相等概率随机选择其中之一。显然,若某把锁已与某把钥匙匹配成功,则该锁和钥匙都不会在后续尝试中被再次选择。
假设在最开始时,任意钥匙能打开任意锁的概率均相等。若每个人始终基于所有历史尝试选择最优的钥匙与锁组合,每位成员成功匹配的期望次数分别是多少?
输入格式
每个测试包含多个测试用例。第一行包含测试用例数 $$t$$($$1≤t≤100$$)。接下来是每个测试用例的描述。
输入仅一行包含三个整数 $$n$$、$$l$$、$$k$$($$1≤n≤100$$,$$1≤l≤5000$$,$$k=0$$)——参与游戏的成员数、锁的数量和仿制钥匙的数量。
保证所有测试用例的 $$l$$ 之和不超过 $$5000$$。
输出格式
对于每个测试用例,输出一行包含 $$n$$ 个整数 $$e1,…,en$$,其中 $$ei$$ 表示第 $$i$$ 位成员的期望成功匹配次数,结果对 $$109+7$$ 取模。
形式化地,令 $$M=109+7$$。可以证明精确答案可以表示为不可约分数 $$qp$$,其中 $$p$$ 和 $$q$$ 为整数且 $$q≡0(modM)$$。输出整数 $$p⋅q−1modM$$。换句话说,输出满足 $$0≤x<M$$ 且 $$ei⋅q≡p(modM)$$ 的整数 $$ei$$。
输入输出样例
输入#1
4 3 1 0 3 2 0 2 5 0 9 104 0
输出#1
1 0 0 500000004 1 500000004 200000004 800000008 869203933 991076635 39374313 496894434 9358446 51822059 979588764 523836809 38844739
说明/提示
对于第一个测试用例,只有 $$1$$ 把锁,因此第一位成员必定用唯一的钥匙打开唯一的锁。
对于第二个测试用例,恰好有 $$2$$ 把锁和 $$2$$ 把钥匙,每把钥匙对应一把锁。在缺乏额外信息时,第一位成员会以相等概率随机选择钥匙与锁的组合,成功概率为 $$1/2$$。
- 若第一位成员成功,第二位成员将用另一把钥匙打开另一把锁。
- 若第一位成员失败,则她选择的钥匙能打开另一把锁,而另一把钥匙必定对应她选择的锁。这一信息将使得第二位和第三位成员都能打开一把锁。
综上,期望成功次数为:
e1e2e3=21×1+21×0=21≡500,000,004(mod109+7),=21×1+21×1=1,=21×0+21×1=21≡500,000,004(mod109+7).
翻译由 DeepSeek R1 完成
输入解题思路,AI测评打分。不知道怎么写?