题意:
一共有a+b扇门,其中a扇门后面是牛,b扇后面是车。在你任意选中一个门以后,主持人会打开c扇后面是牛的门,问你要不要换另一个未打开的门。咳咳,其实题目就要你输出总是换门能获奖(选中车)的概率。
分析:
其实呢,只要换门,获奖概率是一定变大的,这点稍后证明,先解决题目。开始时,任选一个门获奖概率为p1=b/(a+b),排除c个门后,被选中的门的概率不变,剩下(a+b-c-1)个门的总概率是b-b/(a+b),所以换门后每个门的概率为:p3=(b-b/(a+b))/(a+b-c-1),这就是答案了。现在证明概率变大:列不等式p3>p1,化简后得b*c > 0,恒成立,得证。为什么刚刚没有p2呢?因为p2接下来会出现。还有一种证明更好理解:开始时,每个门的概率都是p1(同上),排除c个门之后,剩下(a+b-c)个门中每个门的概率是p2,显然p2>p1。现在从剩下的门中选一个,将其概率降为p1,则再剩下的(a+b-c-1)个门每个门的概率变为p3。由于概率总和不变(想一想,为什么?),所以p3>p2,所以p3>p1。
1 // 2013-08-06 09:55:13 2 // 0KB 22ms 156B 3 // by Siriuslzx 4 #include <cstdio> 5 int main() 6 { 7 int a,b,c; 8 while(~scanf("%d%d%d",&a,&b,&c)) 9 printf("%.5lf\n",(b-(double)b/(a+b))/(a+b-c-1)); 10 return 0; 11 }