在2003年之前购买的任何百事任何饮料的瓶盖上都会有一个百事球星的名字。只要凑齐所有百事球星的名字,就可以参加百事世界杯之旅的抽奖活动。假设有n个不同球星的名字,每个名字出现的概率相同(1/n),平均需要买几瓶饮料才能凑齐所有的名字呢?(即能凑齐所有球星的名字期望的天数)。
输入一个数字n,2<=n<=33,百事不同球星的名字的个数。
输出凑齐所有的名字平均需要购买的饮料的瓶数。
思路:假设现在已经有k个球星的名字,那么要使球星的名字达到k+1个平均需要买多少瓶饮料?这是和容易计算的,是n/(n-k)。
所以我们从没有球星的名字开始,直到把所有的球星名字都凑齐,平均需要购买的饮料数E就可计算出来。
E=n(1/1+1/2+1/3+1/4+···+1/n);