S4全球总决赛(2)南邮NOJ2059
S4全球总决赛(2)
时间限制(普通/Java) : 1000 MS/ 3000 MS 运行内存限制 : 65536 KByte
总提交 : 70 测试通过 : 47
总提交 : 70 测试通过 : 47
题目描述
听完了贲贲的预测结果与方法后,yuman提出了一点问题:为何胜率是固定的呢?
我们知道,比赛场上瞬息万变,影响胜率的因素太多了,所以用固定的胜率去预测最后的结果肯定是不科学的,因此让我们更全面地来思考这个问题:
总决赛仍然是五局三胜制,但每盘的胜率不一定相等,请你再次计算最后皇族的胜率;
输入
先输入一个正整数T,表示有T组测试数据(1<=T<=100)
对于每一个测试数据,分别输入5个浮点数,分别表示皇族在第i盘的胜率pi(0<=pi<=1)
输出
输出一个浮点数ans(0<=ans<=1),表示皇族的最终胜率,结果保留6位小数;
样例输入
2
1 1 1 1 1
0.1 0.2 0.3 0.4 0.5
样例输出
1.000000
0.150000
提示
定义浮点数时,请均使用double类型
总的感受就是,跟(1)类似,还好比赛次数是固定的~
#include<iostream> #include<cstdio> #include<cstring> #include<queue> #include<set> #include<map> #include<vector> #include<stack> #include<cmath> #include<string> #include<algorithm> using namespace std; int main() { int T; cin>>T; while(T--!=0) { double a[5],ens=1,fns=0,gns=0; for(int i=0;i<5;i++) cin>>a[i]; for(int i=0;i<5;i++) { ens*=a[i]; } fns=(1-a[0])*a[1]*a[2]*a[3]*a[4]+a[0]*(1-a[1])*a[2]*a[3]*a[4]+a[0]*a[1]*(1-a[2])*a[3]*a[4]+ a[0]*a[1]*a[2]*(1-a[3])*a[4]+a[0]*a[1]*a[2]*a[3]*(1-a[4]); gns=(1-a[0])*(1-a[1])*a[2]*a[3]*a[4]+(1-a[0])*(1-a[2])*a[1]*a[3]*a[4]+(1-a[0])*a[1]*(1-a[3])*a[2]*a[4]+(1-a[0])*a[1]*a[2]*(1-a[4])*a[3]+ a[0]*(1-a[1])*a[4]*a[3]*(1-a[2])+(1-a[1])*a[0]*a[2]*(1-a[3])*a[4]+(1-a[1])*a[0]*a[2]*a[3]*(1-a[4])+ a[0]*(1-a[2])*a[1]*(1-a[3])*a[4]+a[0]*a[1]*(1-a[2])*a[3]*(1-a[4])+ a[0]*a[1]*a[2]*(1-a[3])*(1-a[4]); printf("%.6f\n",ens+fns+gns); } return 0; }
版权声明:本文为博主原创文章,未经博主允许不得转载。
posted on 2015-03-30 08:30 Tob__yuhong 阅读(95) 评论(0) 编辑 收藏 举报