有乙個簡單但是很有趣的遊戲。在這個遊戲中有乙個硬幣還有一張桌子,這張桌子上有很多平行線(如下圖所示)。兩條相鄰平行線之間的距離是1,硬幣的半徑是r,然後我們來拋硬幣到桌子上,拋下之後硬幣有時候會和一些直線相交(相切的情況也算是相交),有時候不會。
請你來計算一下拋一次硬幣之後,該硬幣和直線相交數目的期望。
input
第一行給出乙個整數t,表示有t組資料(1
<=t
<=10000)。
第2行到t+1,每行給出乙個整數r。(0
< r <= 10,000,000,000)
output
對於每乙個資料,在一行中輸出答案的整數部分即可。
input示例11
output示例
求期望:ex=x1p1+x2p2+x3p3+…+xnpn
這裡有兩種情況:求與兩條線相切,線段數目是n+1
不想切的線段數目是n.
相切的概率是p(切)=(2
*r-n),e(切)=(2
*r-n)*(n+1)
不想切的概率是是(0,n-2
*r+1),無線趨近於1,p(不切)=(n-2
*r+1),e(不切)=(n-2
*r+1)*n
e(總)=e(切)+e(不切)=(n-2
*r+1)*n+(n-2
*r)*(n+1) = 2
*r也可以理解為:無數次拋,相切的概率無線趨近於1,不想切的概率為0.
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define fir first
#define sec second
#define fin freopen("/home/ostreambaba/文件/input.txt", "r", stdin)
#define fout freopen("/home/ostreambaba/文件/output.txt", "w", stdout)
#define mes(x, m) memset(x, m, sizeof(x))
#define pii pair
#define pll pair
#define inf 1e9+7
#define pi 4.0*atan(1.0)
#define mod 1000000007
#define lowbit(x) (x&(-x))
#define lson l,m,rt<<1
#define rson m+1,r,rt<<1|1
#define ls rt<<1
#define rs rt<<1|1
typedef
long
long ll;
typedef
unsigned
long
long ull;
const
double eps = 1e-12;
const
int maxn = 4;
using
namespace
std;
inline
int read()
while (ch>='0'&&ch<='9') x=x*10+ch-'0',ch=getchar();
return x*f;
}int main()
return
0;}
51nod 1381 硬幣遊戲
基準時間限制 1 秒 空間限制 131072 kb 分值 5 難度 1級演算法題 有乙個簡單但是很有趣的遊戲。在這個遊戲中有乙個硬幣還有一張桌子,這張桌子上有很多平行線 如下圖所示 兩條相鄰平行線之間的距離是1,硬幣的半徑是r,然後我們來拋硬幣到桌子上,拋下之後硬幣有時候會和一些直線相交 相切的情況...
51nod 1381 硬幣遊戲
1381 硬幣遊戲 基準時間限制 1 秒 空間限制 131072 kb 分值 5 難度 1級演算法題 收藏關注有乙個簡單但是很有趣的遊戲。在這個遊戲中有乙個硬幣還有一張桌子,這張桌子上有很多平行線 如下圖所示 兩條相鄰平行線之間的距離是1,硬幣的半徑是r,然後我們來拋硬幣到桌子上,拋下之後硬幣有時候...
51nod1381 硬幣遊戲
1381 硬幣遊戲 基準時間限制 1 秒 空間限制 131072 kb 分值 5 難度 1級演算法題 收藏關注有乙個簡單但是很有趣的遊戲。在這個遊戲中有乙個硬幣還有一張桌子,這張桌子上有很多平行線 如下圖所示 兩條相鄰平行線之間的距離是1,硬幣的半徑是r,然後我們來拋硬幣到桌子上,拋下之後硬幣有時候...