已知星球上有n天,求邀请人数的最小值cnt,满足参加生日party上至少两个人同一天生日的概率至少为0.5。
每个人生日的概率是,当邀请的人数(加上自己)每个人生日都不同时,概率为P,
即。
所以至少两个人生日同一天的概率为1-P,只要1-P>=0.5退出,最后答案为cnt-1即可。
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int main(){
int T,n,t=1;
scanf("%d",&T);
while(T--){
scanf("%d",&n);
double p=1.0,pp=0.0;
int cnt=0;
while(pp<0.5){
cnt++;
p=p*(1-1.0*(cnt-1)/n);
pp=1-p;
}
printf("Case %d: %d\n",t++,cnt-1);
}
return 0;
}