生日相同的概率
Description
Sometimes some mathematical results are hard to believe. One of the common problems is the birthday paradox. Suppose you are in a party where there are 23 people including you. What is the probability that at least two people in the party have same birthday? Surprisingly the result is more than 0.5. Now here you have to do the opposite. You have given the number of days in a year. Remember that you can be in a different planet, for example, in Mars, a year is 669 days long. You have to find the minimum number of people you have to invite in a party such that the probability of at least two people in the party have same birthday is at least 0.5.
Input
Input starts with an integer T (≤ 20000), denoting the number of test cases.
Each case contains an integer n (1 ≤ n ≤ 105) in a single line, denoting the number of days in a year in the planet.
Output
For each case, print the case number and the desired result.
Sample Input
2
365
669
Sample Output
Case 1: 22
Case 2: 30
题目大意 一道数学概率题 在多少人中 两个人的生日是同一天的概率大于等于0.5
问你除了主人之外 再邀请几个人可以满足以上条件
正着算比较麻烦 我们可以算出不相同的概率
我们一个一个的加 当只邀请一个人 生日不相同的概率为 364/365 邀请两个人为364/365 * 363/365 以此类推
#include<cstdio>
int main()
{
int t;
scanf("%d",&t);
int cut=0;
while(t--)
{
cut++;
int n;
scanf("%d",&n);
double sum=1.0;
int i,j;
for(i=1;i<=n;i++)
{
sum*=(double)(n-i)/n;
if(sum<=0.5)
{
j=i;
break;
}
}
printf("Case %d: %d\n",cut,j);
}
return 0;
}