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

OSU!

时间:2018-10-19 22:01:17      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:its   int   期望   names   lin   难度   cpp   维护   scanf   

期望的经典题

总期望=所以情况期望之和
期望=贡献概率
期望的增量=贡献的增量
概率

贡献=\(x^3\)
贡献的增量=\((x+1)^3-x^3=3*x^2+3*x+1\)
其中\(x\)的增量是\(1\)
\(x^2\)的增量是\((x+1)^2-x^2=2*x+1\)
分别维护\(x\),\(x^2\),\(x^3\)的期望即可

#include<bits/stdc++.h>

using namespace std;

double x1,x2,x3,p;

int main(){
    int n;scanf("%d",&n);
    while(n--){
        scanf("%lf",&p);
        x3+=(3*x2+3*x1+1)*p;
        x2=(x2+2*x1+1)*p;
        x1=(x1+1)*p;
    }
    printf("%.1lf",x3);
}

虽然代码很短
但是如果刚开始接触概率和期望
还是很有难度的

OSU!

标签:its   int   期望   names   lin   难度   cpp   维护   scanf   

原文地址:https://www.cnblogs.com/yicongli/p/9818644.html

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