有 N 个妹子,每次随机约 1 个,求平均多少次才能把每个妹子都约到?
结果请保留 4 位小数。
写出 N∈[1,10]的结果
编程计算 N∈[1, 100000]的结果
1
zhidian Apr 26, 2017
你没机会提交了,嗯……哈哈哈。
|
3
Vinty Apr 26, 2017 |
4
xujinkai Apr 26, 2017 via Android
这个有公式的 sigma N/i 好像
|
5
blankme Apr 26, 2017
我怎么算出来是个发散的级数。。。
|
6
snnn Apr 27, 2017 via Android
这叫奖券搜集问题
|
7
Mistwave Apr 27, 2017 via iPhone
不能保证所有一定约到 只能保证概率
|
8
starvedcat Apr 27, 2017
“约到”产生了歧义。。
|
10
irainsoft Apr 27, 2017
还是换成抽奖吧,约妹子成功概率再高,现实情况也可能是很残酷的
|
11
Tunar Apr 27, 2017 via Android
前提条件呢
|
12
yalanaika Apr 27, 2017 约 <> 约到
这又不是小浣熊,每次都能给张卡的。 |
13
cloudzhou Apr 27, 2017
f(n) = (1+2+3...+n)/(1*2*3*...*n)
迭代实现,1+2+3... 和 1*2*3 不用每次重复计算,可以使用上次计算结果 |
14
Ahri Apr 27, 2017
Coupon collector's problem
|
15
cloudzhou Apr 27, 2017
我的答案不对的,还没想好
|
16
Valyrian Apr 27, 2017 约出第 1 个妹子的所需次数的期望是 1
约出第 2 个(不同)妹子所需次数的期望是 N/N-1,(因为每次概率是 N-1/N,几何分布) 约出第 3 个(不同)妹子所需次数的期望是 N/N-2 ... 约出第 N 个(不同)妹子所需次数的期望是 N/1 所有期望相加就是全约出来的期望 N*(调和级数前 N 项的和) |
19
inFinityzc Apr 27, 2017 |
20
ipwx Apr 27, 2017
递推公式:
E[x(1)] = 1 E[x(k)] = (E[x(k-1)] + 1) * ((N-k+1)/N) + (E[x(k)] + 1) * ((k-1) / N) 整理: E[x(k)] = E[x(k-1)] + N/(N-k+1) 得到: E[x(N)] = N * sum(1/(N-k+1), k from 1 to N) 也就是 @Valyrian 的答案。 |
21
zsdroid Apr 27, 2017
答案是 0,因为我没有妹子
|
22
xiaoyu233 Apr 28, 2017 via iPhone
答案是 0,因为我没有妹子
|
23
zero1234888 Apr 28, 2017
答案是 0,因为我没有妹子
|