zoukankan      html  css  js  c++  java
  • HDU 4438 Hunters 第37届ACM/ICPC 天津赛区现场赛H题(超级水的题目)

    Hunters

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
    Total Submission(s): 21    Accepted Submission(s): 17


    Problem Description
    Alice and Bob are the topmost hunters in the forest, so no preys can escape from them. However, they both think that its hunting skill is better than the other. So they need a match.
    In their match, the targets are two animals, a tiger and a wolf. They both know that the tiger is living in the south of the forest and the wolf is living in the north of the forest. They decide that the one who kills the tiger scores X points and who kills the wolf scores Y points. If the one who kills both tiger and wolf scores X+Y points.
    Before the match starts, Alice is in the east of the forest and Bob is in the west of the forest. When the match starts, Alice and Bob will choose one of the preys as targets. Because they haven't known the other's choice, maybe they choose the same target. There will be two situations:
    (1) If they choose different targets, they both are sure of killing their respective targets.
    (2) If they choose the same target, the probability of Alice killing the target is P, and the probability of Bob killing it is 1-P. Then they will hunt for the other prey, also the probability of Alice killing it is P and the probability of Bob killing it is 1-P.
    But Alice knows about Bob. She knows that the probability of Bob choosing tiger as his first target is Q, and the probability of choosing wolf is 1-Q. So that Alice can decide her first target to make her expected score as high as possible.
     
    Input
    The first line of input contains an integer T (1≤T≤10000), the number of test cases.
    Then T test cases follow. Each test case contains X, Y, P, Q in one line. X and Y are integers and 1≤X, Y≤1000000000. P and Q are decimals and 0≤P, Q≤1, and there are at most two digits after decimal point.
     
    Output
    For each test case, output the target Alice should choose and the highest expected score she can get, in one line, separated by a space. The expected score should be rounded to the fourth digit after decimal point. It is guaranteed that Alice will have different expected score between choosing tiger and wolf.
     
    Sample Input
    3 2 1 0.5 0.5 2 1 0 1 7 7 0.32 0.16
     
    Sample Output
    tiger 1.7500 wolf 1.0000 tiger 6.5968
     
    Source
     
    Recommend
    zhoujiaqi2010
     
     
     
    这题是区域赛最水的题目了,谁先发现这题,800元FB就是谁的了。。。。
     
    不能再水的题目了。
    两个期望值:
    (1-Q)*X+Q*P*(X+Y)
    Q*Y+(1-Q)*P*(X+Y)
    比较哪个大就好了。。。。
    #include<stdio.h>
    #include<string.h>
    #include<algorithm>
    #include<iostream>
    using namespace std;
    
    int main()
    {
        int X,Y;
        double P,Q;
        int T;
        scanf("%d",&T);
        while(T--)
        {
            scanf("%d%d%lf%lf",&X,&Y,&P,&Q);
            double ans1=(1-Q)*X+Q*(P*X+P*Y);
            double ans2=Q*Y+(1-Q)*(P*X+P*Y);
            if(ans1>ans2)printf("tiger %.4lf\n",ans1);
            else printf("wolf %.4lf\n",ans2);
        }
        return 0;
    }
    人一我百!人十我万!永不放弃~~~怀着自信的心,去追逐梦想
  • 相关阅读:
    angularjs 学习笔记(一)
    iconfont项目成员添加不进去的问题
    服务器webapi集成极光推送学习笔记
    winform closing事件注册
    asp.net core webapi 似乎未安装在 IIS 中承载 .NET Core 项目所需的 AspNetCoreModule。请尝试修复 Visual Studio 以纠正该问题。
    css 行内元素设置宽高
    透过浏览器看HTTP缓存[转载]
    矢量字体图标
    HTML5新特性之WebRTC[转]
    一个前后端分离方案[转载]
  • 原文地址:https://www.cnblogs.com/kuangbin/p/2741109.html
Copyright © 2011-2022 走看看