码迷,mamicode.com
首页 > 其他好文 > 详细

P3802 小魔女帕琪

时间:2017-06-25 21:23:25      阅读:264      评论:0      收藏:0      [点我收藏+]

标签:输入输出格式   begin   sed   相同   攻击   end   style   测试   through   

P3802 小魔女帕琪

题目背景

从前有一个聪明的小魔女帕琪,兴趣是狩猎吸血鬼。

帕琪能熟练使用七种属性(金、木、水、火、土、日、月)的魔法,除了能使用这么多种属性魔法外,她还能将两种以上属性组合,从而唱出强力的魔法。比如说为了加强攻击力而将火和木组合,为了掩盖弱点而将火和土组合等等,变化非常丰富。

题目描述

现在帕琪与强大的夜之女王,吸血鬼蕾咪相遇了,夜之女王蕾咪具有非常强大的生命力,普通的魔法难以造成效果,只有终极魔法:帕琪七重奏才能对蕾咪造成伤害。帕琪七重奏的触发条件是:连续释放的7个魔法中,如果魔法的属性各不相同,就能触发一次帕琪七重奏。

现在帕琪有7种属性的能量晶体,分别为a1,a2,a3,a4,a5,a6,a7(均为自然数),每次释放魔法时,会随机消耗一个现有的能量晶体,然后释放一个对应属性的魔法。

现在帕琪想知道,她释放出帕琪七重奏的期望次数是多少,可是她并不会算,于是找到了学OI的你

输入输出格式

输入格式:

一行7个数字,a1,a2,a3,a4,a5,a6,a7

输出格式:

一个四舍五入保留3位的浮点数

输入输出样例

输入样例#1:

1 1 1 1 1 1 1

输出样例#1:

1.000

说明

样例说明:

显然一定会触发一次帕琪七重奏

数据范围:

对于30%的测试点,a1+a2+a3+a4+a5+a6+a7<=10

对于100%的测试点,a1+a2+a3+a4+a5+a6+a7<=10^9

by-szc

 

思路分析:期望入门题。

首先引入一个公式:

数学期望公式:

\begin{equation*}E\xi=\sum_{i=0}^n x_i p_i\end{equation*}

设:

\begin{equation*}p=\sum^n_{i=1}a_i\end{equation*}

对于每一位i7魔法都不相同的概率为:

 \begin{equation*}P=7!\cdot a_1\div p\cdot a_2\div{(p-1)}\cdot a_3\div{(p-2)}\cdot a_4\div{(p-3)}\cdot a_5\div{(p-4)}\cdot a_6\div{(p-5)}\cdot a_7\div{(p-6)}\end{equation*}

由于n的范围为1-6,n-6=0,所以原式可化简为:

 \begin{equation*}P=7!\cdot a_1\div p\cdot a_2\div{(p-1)}\cdot a_3\div{(p-2)}\cdot a_4\div{(p-3)}\cdot a_5\div{(p-4)}\cdot a_6\div{(p-5)}\cdot a_7\end{equation*}

由此可写出代码:

技术分享
 1 #include<cstdio>
 2 using namespace std;
 3 double a1,a2,a3,a4,a5,a6,a7,n;
 4 int main()
 5 {
 6     scanf("%lf%lf%lf%lf%lf%lf%lf",&a1,&a2,&a3,&a4,&a5,&a6,&a7);
 7     n=a1+a2+a3+a4+a5+a6+a7;
 8     printf("%.3lf",5040*a1/n*a2/(n-1)*a3/(n-2)*a4/(n-3)*a5/(n-4)*a6/(n-5)*a7);
 9     return 0;
10 }
View Code

P3802 小魔女帕琪

标签:输入输出格式   begin   sed   相同   攻击   end   style   测试   through   

原文地址:http://www.cnblogs.com/TheRoadToAu/p/7077890.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!