【51nod】2022.5.14 1381.硬币游戏

这篇博客介绍了一个有趣的数学问题,涉及抛硬币与桌子上平行线相交的期望次数计算。题目中,硬币半径为RRR,每次抛掷后硬币可能与一些直线相交。博主提供了简单的解题思路,指出当硬币直径为2R时,相交的期望值为2r,代码实现简洁明了。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原题网址

不是内网了,所以进得去了(51nod)

题目描述

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

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

格式

输入格式

1 1 1行给出 1 1 1个整数 T T T,表示有 T T T组数据( 1 ≤ T ≤ 10000 1\le T\le10000 1T10000)。
2 2 2行到 T + 1 T+1 T+1行,每行给出 1 1 1个整数 R R R( 1 ≤ R ≤ 1 0 10 1\le R\le10^{10} 1R1010)。

输出格式

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

样例

输入样例

1
1

输出样例

2

解题思路

又一道水题。 注意看描述中的 R R R为半径(虽然好像一般 R R R就是半径)!因此,硬币的直径为 2 R 2R 2R ∴ \therefore

Created with Raphaël 2.3.0 开始 硬币两边都碰到直线? 期望为2r+1,设几率为p 小概率事件,数学上令p为0 期望为(2r+1)*0+2r*1=2r。 结束 期望为2r,设几率为q 因为p+q=1,p=0,所以q=1 yes no

所以说很水嘛。

Code

#include<bits/stdc++.h>
using namespace std;
int t,r;
int main() {
    cin>>t;
    while(t--) {
        cin>>r;
        cout<<2*r<<endl;
    }
    return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值