1. 程式人生 > >51nod 1381 硬幣遊戲

51nod 1381 硬幣遊戲

main start -1 技術分享 lose ble stream pla 時間限制

分析:絕大部分情況硬幣與直線相交數目為2*R條,極少數情況為2*R+1條。所以數學期望E=0.9999999*2*R+0.00000001*(2*R+1),而要求輸出整數部分,則為2*R。 代碼: 技術分享
 1 #include <iostream>
 2 using namespace std;
 3 typedef long long ll;
 4 ll r;
 5 int main()
 6 {
 7     ios::sync_with_stdio(false);
 8     int t;
 9     cin>>t;
10     while(t--)
11     {
12 cin>>r; 13 cout<<r*2<<endl; 14 } 15 return 0; 16 }
View Code

1381 硬幣遊戲技術分享 基準時間限制:1 秒 空間限制:131072 KB 分值: 5 難度:1級算法題 技術分享 收藏 技術分享 關註 技術分享 取消關註

有一個簡單但是很有趣的遊戲。在這個遊戲中有一個硬幣還有一張桌子,這張桌子上有很多平行線(如下圖所示)。兩條相鄰平行線之間的距離是1,硬幣的半徑是R,然後我們來拋硬幣到桌子上,拋下之後硬幣有時候會和一些直線相交(相切的情況也算是相交),有時候不會。

請你來計算一下拋一次硬幣之後,該硬幣和直線相交數目的期望。

技術分享
Input
第一行給出一個整數T,表示有T組數據(1<=T<=10000)。
第2行到T+1,每行給出一個整數R。(0< R <= 10,000,000,000)
Output
對於每一個數據,在一行中輸出答案的整數部分即可。
Input示例
1
1
Output示例
2

51nod 1381 硬幣遊戲