阿里巴巴面试趣题

公司应该雇用多少员工?

大公司有这么一个规定:只要有一个员工过生日,当天所有员工全部放假一天。但在其余时候,所有员工都没有假期,必须正常上班。这个公司需要雇用多少员工,才能让公司一年内所有员工的总工作时间期望值最大?
    假设一年有 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 以后,函数才是递减的。

    这个问题的答案非常出人意料,反直觉性恐怕不亚于经典的生日悖论。它应该可以看作是生日悖论番外篇了吧。对于这个答案,还有什么更直观,更有启发性的解释吗?大家一起来想想吧。

你可能感兴趣的:(阿里巴巴)