题意:
增加一年有n天;
那么至少有几个人,能够保证至少两个人同一天生日的概率大于等于0.5;
思路:
转化一下题意;
就是求全部人生日都不同的概率小于等于0.5(那么至少两个人同一天就是大于等于0,5);
增加一年365天.那么10个人全都不同天生日的概率就是
366/366 * 365/366 * 364/366 .... * 356/366;
就能够得到公式了;
所以我们累乘过去知道小于等于0.5;看累乘几个;
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
using namespace std; int n;
int main() {
int t;
int cas = 1;
scanf("%d",&t);
while(t--) {
scanf("%d",&n);
double res = 1;
int i;
for(i = n - 1; i >= 0; i--) {
double tmp = i;
res *= (tmp / n);
if(res <= 0.5)
break;
}
printf("Case %d: %d\n",cas++, n - i);
}
}