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; }
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步