您的位置:首页 > 其它

51Nod 1381 硬币游戏

2017-12-19 19:26 232 查看
有一个简单但是很有趣的游戏。在这个游戏中有一个硬币还有一张桌子,这张桌子上有很多平行线(如下图所示)。两条相邻平行线之间的距离是1,硬币的半径是R,然后我们来抛硬币到桌子上,抛下之后硬币有时候会和一些直线相交(相切的情况也算是相交),有时候不会。

请你来计算一下抛一次硬币之后,该硬币和直线相交数目的期望。



Input

第一行给出一个整数T,表示有T组数据(1<=T<=10000)。

第2行到T+1,每行给出一个整数R。(0< R <= 10,000,000,000)

Output

对于每一个数据,在一行中输出答案的整数部分即可。

Input示例

1

1

Output示例

2

本来以为这个题很难,想了半天没有想到,后来看了disguss,恍然大悟。

设半径为r的硬币落下和直线相交的数目为2*r的概率为p,和直线相交的数目为2 * r+1的概率为q,可知p+q=1.

因为平行线无穷大,所以落下的硬币与直线相切(即概率为q)的情况为小概率事件,小概率事件虽然有可能发生,但是在数学上认为它的概率为0,所以q=0,p=1,所以期望值为2*r.

#include<iostream>
#include<cstdio>
#include<string>
using namespace std;
int main()
{
ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0);
int T;
cin>>T;
while(T--)
{
int r;
cin>>r;
cout<<2*r<<endl;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: