python“森林猎人”问题

题目描述
小明和小华都是森林里最顶级的猎人,没有猎物能逃脱他们。然而,他们都认为自己的狩猎技巧比另一个人好,所以他们进行了一场比赛。
在他们的比赛中,目标是一只老虎和一只狼。老虎住在森林的南部,狼住在森林的北部。他们认为杀死老虎的人得 x 分,杀死狼的人得 y 分。如果同时杀死老虎和狼的人得到 x+y 分。
比赛开始前,小明在森林的东边,小华在森林的西边。比赛开始时,小明和小华将选择其中一只猎物作为目标。因为他们不知道对方的选择,也许他们选择了同一个目标。有两种情况:
1.如果他们选择不同的目标,他们都有把握杀死各自的目标。
2.如果他们选择同一个目标,小明杀死目标的概率为 p,小华杀死目标的概率为 1-p。然后他们会猎取其他猎物,小明杀死目标的概率为 p,小华杀死目标的概率为 1-p。
但是小明非常了解小华。他知道小华选择老虎作为第一个目标的概率是 q,而选择狼的概率是 1-q。因此小明请聪明的你帮忙决定他的第一个目标,使他的预期分数尽可能高。

输入输出格式
输入格式
第一行有两个整数 x,y,含义如题目描述所示;
第二行有两个双精度浮点数 p,q ,含义如题目描述所示。
数字之间以空格间隔。
输出格式
针对输入,打印出小明应该选择的目标和他可以获得的最高预期分数,在一行中用空格隔开。预期分数应四舍五入至小数点后第四位。
如果选择老虎,请打印出 tiger,如果选择狼,请打印出 wolf。

输入输出样例1
输入
2 1
0.5 0.5
输出
tiger 1.7500

输入输出样例2
输入
7 7
0.32 0.16
输出
tiger 6.5968

说明提示
1≤x,y≤10^8,0<p,q≤1

解:

list1=input().split(" ")
x=int(list1[0])
y=int(list1[1])
p=float(list1[2])
q=float(list1[3])
tiger=(x*p+y*p)*q+x*(1-q)
wolf = (x*p+y*p)*(1-q)+y*q
if tiger>=wolf:
    print("tiger","%.4f"%tiger)
else:
    print("wolf","%.4f"%wolf)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值