卡片游戏 数学期望
鏈接:https://www.nowcoder.com/acm/contest/202/H
來源:??途W
卡片游戲
時間限制:C/C++ 1秒,其他語言2秒
空間限制:C/C++ 1048576K,其他語言2097152K
Special Judge, 64bit IO Format: %lld
題目描述
小貝喜歡玩卡片游戲。某個游戲體系中共有N種卡,其中M種是稀有的。小貝每次和電腦對決獲勝之后都會有一個抽卡機會,這時系統會隨機從N種卡中選擇一張給小貝。普通卡可能多次出現,而稀有卡不會被重復抽到。小貝希望收集到K種稀有卡,她想知道期望需要多少次獲勝才能實現這個目標。
輸入描述:
數據有多組,第一行一個整數T表示數據組數。 每組數據一行,三個整數N,M,K .輸出描述:
對于每組數據,輸出形如"Case #x: y",其中 x 為這組數據的編號(從1開始),y 為這組數據的答案。答案的絕對誤差或相對誤差在10-6以內都認為是正確的。?
示例1
輸入
復制
2 5 2 1 40 9 5輸出
復制
Case #1: 2.5 Case #2: 28.1146825397備注:
1 ≤ T ≤ 100 1 ≤ N ≤ 105 1 ≤ M ≤ N 1 ≤ K ≤ M題解:
#include<bits/stdc++.h> using namespace std; const int maxn=1e3+10; const double eps=1e-6; const double inf = 1e9+7; int main() {int T;int ca=1;scanf("%d",&T);while(T--){int n,m,k;scanf("%d%d%d",&n,&m,&k);double ans=0;for(int i=0;i<=k-1;i++)ans+=(double)(n-i)/(m-i);printf("Case #%d: %lf\n",ca++,ans);} }?
總結
- 上一篇: 【Java】基于注解开发初探
- 下一篇: SpringBoot从入门到实战只需一篇