OSU!

期望的经典题

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

贡献=\(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);
}

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

posted @ 2018-10-19 20:36  NamelessOIer  阅读(181)  评论(0编辑  收藏  举报