某大公司有这么一个规定:只要有一个员工过生日,当天所有员工全部放假一天。但在其余时候,所有员工都没有假期,必须正常上班。这个公司需要雇用多少员工,才能让公司一年内所有员工的总工作时间期望值最大?
假设一年有 365 天,每个员工的生日都概率均等地分布在这 365 天里。
你的第一感觉或许是,公司应该雇用 100 多人,或者 200 多人吧。答案或许会让你大吃一惊:公司应该雇用 365 个人。注意,雇用 365 个人并不意味着全体员工全年的总工作时间为 0 ,因为 365 个人的生日都是随机的,恰好每天都有一个人过生日的概率极小极小。下面我们就来证明,这个问题的最优解就是 365 人。
由于期望值满足线性关系(即对于随机变量 X 和 Y 有 E(X) + E(Y) = E(X+Y) ),因此我们只需要让每一天员工总工作时间的期望值最大就可以了。假设公司里有 n 个人,那么在特定的一天里,没有人过生日的概率是 (364/365)n 。因此,这一天的期望总工作时间就是 n · (364/365)n 个工作日。为了考察函数 n · (364/365)n 的增减性,我们来看一下 ((n+1) · (364/365)n+1) / (n · (364/365)n) 的值,它等于 (364 · (n+1)) / (365 · n) 。如果分子比分母小,解得 n > 364 。可见,要到 n = 365 以后,函数才是递减的。
这个问题的答案非常出人意料,反直觉性恐怕不亚于经典的生日悖论。它应该可以看作是生日悖论番外篇了吧。对于这个答案,还有什么更直观,更有启发性的解释吗?大家一起来想想吧。
问题来源:http://mindyourdecisions.com/blog/2011/06/07/birthday-laws-probability-puzzle/
沙发?
又板凳
我的沙发没了,话说答案在意料中
数学之美啊……每天有一个人过生日和每天没有人过生日不是对立的,所以这跟生日悖论看似冲突了?
比起生日悖论的实用性,这个公司要亏死了。
想到一个虽繁复但更直观点的:
考虑公司已经有n名员工了,生日分布在d天,那么当再招募一名新员工时,此人生日与原公司员工重合的概率为d/365,因此他的加入,潜在给公司增加的总工作天数为
(d/365)*(365-d) + (1-d/365)(364-d) = 364(1-d/365)
即重合概率×重合下的此人需工作天数,加上不重合概率×不重合下此人需工作天数
另外,他的加入,潜在导致公司减少的总工作天数为
(1-d/365)n
即不重合概率×原公司员工数,重合情况下原公司员工所需工作时间不变。
同样当n<364的时候,新增工作时间总是多于减少的工作时间。
当n=364的时候,新增第365人,并不会增加期望的工作时间。
所以准确来说是答案应该是364。
orz ls。。。。
364*(364/365)^364=365*(364/365)^365好不好
我一般很少顶人…这篇文章不顶是不行的。
顶!
其实也是合乎情理的了,当然是雇佣的人越多,总的工作时间越大了。以员工生日为参数,讨论工作时间最大值,本身也是蛋疼问题。。。
大牛,你有eaglefantasy的可否再介绍一个化学大牛的网站呢?
和并行算法的效率有点关系。一年中出现生日就放假就好比固定周期内进程被挂起,当进程数太多时,并行效率反而下降
这个答案真的有点出乎意料~
貌似缺了一個條件,就是招人時,不能選擇對方的生日。
如果可以選擇的話,都選某一天生日的就行了。
直观的解释,雇用越多的人,工作一天的工时越大,但也有可能一年放假更多天数。
问题就是想找到这对矛盾的一个平衡,使一天的工时越大越好,又使放假的天数越少越好。
其实文中的数学解法已经是最好的解释了,这和生日悖论一样,之所以称为悖论,是因为不通过数字的计算,凭感觉是很难得到好的估计的。
这是啥公司啊球雇佣……
不过算下来每年假期的期望值是多少?……
说来这个问题的奇妙之处在于……员工的生日一旦雇佣就固定了,于是如果恰好生日都不重合,那么大家都不用上班了……
如果恰好在公司忙节连续N个生日,也不用干活了……
当然这是数学问题……我又认真了……
设a=364/365,即求y=xa^x的极大值问题。对其求导得到y’=a^x(xlna+1),其极点满足a^x(xlna+1)=0,即必有xlna+1=0。因此x=-1/lna≈364.5。试了下,假如一年有n天,那么不论n是多少,结果x总是约等于n-0.5。现在新问题来了,为什么-1/ln(1-1/n)要约等于n-0.5呢……
级数展开一下 ln(1+x)=x+x^2/2+… 当 x 很接近 0 的时候
这里面最主要的一个原因是,人越多。相同生日的概率就很大,反倒是生日不一样的概率很小,所以人越多,生日重复的概率就越大。
原来是智力题,还以为是讲公司管理的,嘿嘿
额
。。。
能应用到实际····
招聘:
只招收生日为2月29日的人
····
呵呵 这么复杂 不知道招多少个
喔 呵呵 如果招少人了 那我们员工就很吃亏了
可以考虑用鸽巢原理解释吧,当雇佣366人时,必有两个人在同一天生日。
具体应该怎么解释还没想清楚。。。
同样当n<364的时候,新增工作时间总是多于减少的工作时间。
当n=364的时候,新增第365人,并不会增加期望的工作时间
有个问题,“那么在特定的一天里,没有人过生日的概率是 (364/365)^n ”,但是已知生日是均匀分布的,这句话还成立么?
因为如果假设里提到了每个人的生日均匀分布在365天里,其实已经违背了员工的生日日期是iid的了吧。
不应该招364人和365人一样的么?
364和365一样的吧
大牛就是举重若轻
本来觉得第二天的概率是条件于第一天的,浪费了好多时间编程算。。结果答案一样,364和365,一年有y天,答案都是y和y–1