1. 程式人生 > >The 2018 ACM-ICPC Chinese Collegiate Programming Contest Take Your Seat

The 2018 ACM-ICPC Chinese Collegiate Programming Contest Take Your Seat

scanf com 分享圖片 pro name string 技術 證明 double

/*

證明過程如下 :
第一種情況:
按1到n的順序上飛機,1會隨意選一個,剩下的上去時若與自己序號相同的
座位空就坐下去,若被占了就也會隨意選一個。
求最後一個人坐在應坐位置的概率

*/

技術分享圖片

技術分享圖片

技術分享圖片

 1 #include <iostream>
 2 #include <cstdio>
 3 #include <cstring>
 4 #include <string>
 5 #include <algorithm>
 6 #include <utility>
 7 #include <vector>
 8
#include <map> 9 #include <queue> 10 #include <stack> 11 #include <cstdlib> 12 typedef long long ll; 13 #define lowbit(x) (x&(-x)) 14 #define ls l,m,rt<<1 15 #define rs m+1,r,rt<<1|1 16 using namespace std; 17 double x=0.5; 18 double y=1.0; 19 int main() 20 { 21
int t,n,m; 22 scanf("%d",&t); 23 for(int i=1;i<=t;i++) 24 { 25 scanf("%d%d",&n,&m); 26 if(n==1){//特判 27 printf("Case #%d: %.6f %.6f\n",i,y,1.0*(m+1)/(2*m)); 28 } 29 else{ 30 printf("Case #%d: %.6f %.6f\n",i,x,1.0*(m+1)/(2
*m)); 31 } 32 } 33 return 0; 34 }

The 2018 ACM-ICPC Chinese Collegiate Programming Contest Take Your Seat