← 完整题目索引

PROJECT EULER · #0602

人数乘积

Product of Head Counts

仅题目 · 待解原题 ↗

爱丽丝在一些朋友的帮助下使用一枚不公平的硬币生成一个随机数。她和她的朋友们围坐在一张桌子旁,从爱丽丝开始,他们轮流抛硬币。每个人都会计算自己获得了多少个头。一旦爱丽丝获得了头颅,这个过程就结束了。此时,爱丽丝将她所有朋友的头计数相乘以获得她的随机数。

作为说明,假设 Alice 得到 Bob、Charlie 和 Dawn 的协助,他们按顺序坐在桌子周围,并且他们获得以 Alice 开头和结尾的头/尾结果序列 THHH-TTTT-THHT-H。然后Bob 和Charlie 各获得2 个人头,Dawn 获得1 个人头。因此,爱丽丝的随机数是 2×2×1=4

定义 e(n,p) 为 Alice 随机数的期望值,其中 n 是帮助的朋友数量(不包括 Alice 本人),p 是硬币出现反面的概率。

事实证明,对于任何固定的 ne(n,p) 始终是 p 中的多项式。例如,e(3,p)=p3+4p2+p

c(n,k) 定义为多项式 e(n,p)pk 的系数。因此 c(3,1)=1c(3,2)=4c(3,3)=1

给定 c(100,40)986699437 (mod 109+7)

c(10000000,4000000)mod109+7

题解待补充

这道题的题目已收录,解题思路、代码和答案将在后续补充。