描述:一个房间里必须要有多少人,才能让某人和你生日相同的概率至少为1/2?
思路:首先你的生日固定在某一天,假设有n个人,每个人与你生日不同的概率均为364/365,n个人与你生日不同的概率一共为(364/365)^n,有人相同取其对立面即可
c++代码
#include <iostream>
#include<math.h>
using namespace std;
int main()
{
int days=365;//一年以365计算
int numberPeople=0;
double probility=1.0,probility_1=0;
while(probility_1<0.5)
{
numberPeople++;
probility*=pow(((days-1)*1.0/days),1);
probility_1=1-probility;
}
cout<<"一个房间里必须要有"<<numberPeople<<"人,才能让某人和你生日相同的概率至少为1/2";
return 0;
}
运行结果