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;
}
本文探讨了一个经典的概率问题——生日悖论。通过计算在一个特定数量的人群中至少有两人生日相同的概率达到0.5所需的最少人数。代码示例展示了如何通过逐步增加人群数量并计算不同星球上(如地球和火星)生日不相同的概率来找到这一临界点。

1500

被折叠的 条评论
为什么被折叠?



