HDU 4438 Hunters 区域赛水题

2012天津区域赛最水之题:

题意容易读懂,然后就是分情况求出A得分的数学期望,所谓数学期望就是在该概率下的平均得分。

现在就是两种方案,Alice要根据输入给出的数据情况选出最优方案,也就是先选老虎,还是狼。

1.A先选老虎:

   a.B也先选老虎,则得分为Q(P*X+P*Y);  //打完老虎还要打狼

   b.B选狼,则两人可以直接获得猎物,则得分为(1-Q)*X

所以1方案Alice先选老虎的得分期望是a+b;(数学期望每种情况的概率加起来要为1,这里以Bob的选择情况为分水岭,容易得出)

 

2.A先选狼:

   a.B先......

   b.B先.....

 

然后比较A和B的得分期望那个高,就选哪种方案,另外输出也给出了提示,即选择Tiger和Wolf的得分情况。

复制代码
#include <iostream>
#include <cstdio>

using namespace std;

int main()
{
    int T;
    cin>>T;
    while(T--){

    double a,b;
    double x,y,p,q;
    cin>>x>>y>>p>>q;
    a=q*(p*x+p*y)+(1-q)*x;
    b=(1-q)*(p*x+p*y)+y*q;
    if(a>b)
        printf("tiger %.4f\n",a);
    else
        printf("wolf %.4f\n",b);
    }
    return 0;
}
复制代码

 

posted @   Pacify  阅读(472)  评论(3编辑  收藏  举报
努力加载评论中...
点击右上角即可分享
微信分享提示