题意:
在a+b扇门,a扇后面是牛,b扇后面是车。在你选择一扇门后,主持人为你打开另外c扇门,然后你再选一扇,
求是车的概率
①先选牛:a/(a+b),然后还剩a+b-c-1扇门,其中b扇为车,所以a/(a+b)*b/(a+b-c-1)
②先选车:b/(a+b),然后还剩a+b-c-1扇门,其中b-1扇为车,所以b/(a+b)*(b-1)/(a+b-c-1)
#include <iostream> #include <cstdio> #include <cmath> #include <cstring> #include <cstdlib> #include <algorithm> typedef long long ll; using namespace std; int main() { int a,b,c; while(scanf("%d%d%d",&a,&b,&c) != EOF) { double T_cow = 1.0*a/(a+b); //选牛 double ans1 = T_cow*b/(a+b-c-1); double T_car = 1 - T_cow; //选车 double ans2 = T_car*(b-1)/(a+b-c-1); printf("%.5lf ",ans1+ans2); } return 0; }