OSU!

OSU!

期望dp

SCUACM2022集训前训练-动态规划 - Virtual Judge (vjudge.net)

  1. 若连续 x 次成功的贡献是 x,则第 i 次对答案的贡献为 1p

  2. 但连续 x 次成功的贡献是 x3, 而期望只有线性性质,对于 x3 不可累加

  3. 设第 i 个操作成功后,期望连续长度为 l1[i], 期望连续长度的平方为 l2[i]

    1. l1[i]=(l1[i1]+1)p
    2. l2[i]=(l2[i1]+2l1[i1]+1)p
  4. 设第 i 次成功后已经连了 x+1 次,那这一次对答案的贡献就是 (x+1)3x3=3x2+3x+1

    因此贡献为 3l2[i]+3l1[i]+1

#include <iostream>
#include <cstring>
#include <algorithm>
#include <vector>
#include <cmath>

using namespace std;
typedef long long ll;
const int N = 1e5 + 10;
double dp[N], l1[N], l2[N], p;
int n;
int main()
{
	scanf("%d", &n);
	for(int i = 1; i <= n; i++)
	{
		scanf("%lf",&p);
		dp[i] = (3 * l2[i-1] + 3 * l1[i-1] + 1) * p;
		l1[i] = (l1[i-1] + 1) * p;
		l2[i] = (l2[i-1] + l1[i-1] * 2 + 1) * p;
	}
	double ans = 0;
	for(int i = 1; i <= n; i++) 
		ans += dp[i];
	printf("%.1f\n",ans);
	return 0;
}

posted @   hzy0227  阅读(45)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示