题意: 山羊门具体的故事去百度下即可 而这题是给a个牛 b个车 共a+b扇门 主持人开c扇门 求 总是换门的情况下换到车的概率
只是一道简单的概率题 初始选择选择牛的概率: a/(a+b) 车:b/(a+b)
排除c扇和当前选择的门后 剩下a+b-c-1扇门 ↓ ↓
但剩下的车的数量不同: b b-1
所以最后 ans=(ab+bb-b) / (a+b) / (a+b-c-1)
由于精度问题所以要先手动通分约分好(虽然这题不卡精度)
#include<iostream>
#include<cstdio>
#include<cstring>
#include<cctype>
#include<cmath>
#include<vector>
#include<queue>
#include<map>
#include<algorithm>
#include<set>
#define scnaf scanf
#define cahr char
#define bug puts("bugbugbug");
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
const int mod=1000000007;
const int maxn=3e7+10;
const int inf=1e9;
int ans[maxn];
int main()
{
double a,b,c;
while(~scanf("%lf%lf%lf",&a,&b,&c))
{
double ans=a*b+b*(b-1);
ans/=(a+b)*(a+b-c-1);
printf("%.5lf\n",ans);
}
}