2021.8.12提高B组模拟4T1 幻象(期望dp)
Posted SSL_LKJ
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2021.8.12提高B组模拟4T1 幻象(期望dp)相关的知识,希望对你有一定的参考价值。
幻象
题目大意
输入样例
3
50 50 50
输出样例
2.8
题目数据
解题思路
转移方程
f
i
=
f
i
−
1
+
[
(
a
i
−
1
+
1
)
2
−
(
a
i
−
1
)
2
]
∗
x
f_i=f_i~_-~_1 + [(a_i~_-~_1+1)^2-(a_i~_-~_1)^2]*x
fi=fi − 1+[(ai − 1+1)2−(ai − 1)2]∗x
x x x为输入的值(记得 除以100.0)
a i a_i ai为期望前面有多少个数与它相连
所以 a i a_i ai的转移为 a i = ( a i − 1 + 1 ) ∗ x a_i=(a_i~_-~_1+1)*x ai=(ai − 1+1)∗x
AC代码
#include<cstdio>
using namespace std;
int n;
double a[1000005],f[1000005];
int main()
scanf("%d",&n);
for(int i=1;i<=n;i++)
double x;
scanf("%lf",&x);
x/=100.0;
a[i]=(1.0*a[i-1]+1)*x;//预处理a
f[i]=f[i-1]+(1.0*a[i-1]*2+1)*x;//期望dp
printf("%.1lf",f[n]);
return 0;
谢谢
以上是关于2021.8.12提高B组模拟4T1 幻象(期望dp)的主要内容,如果未能解决你的问题,请参考以下文章
2021.8.12提高B组模拟4T3 矩阵(小根堆)(map判重)