【BZOJ-2201】彩色圆环

博客讲述了如何解决一道关于彩色宝石圆环美观程度期望值的问题。小A发现圆环上的宝石颜色每天随机变化,定义了圆环的美观程度并寻求其期望值。博主通过概率动态规划的方法,首先处理链状情况,然后解决环形结构的贡献,最终将算法优化至O(n^2)复杂度。

题目描述

小 A 喜欢收集宝物。一天他得到了一个圆环,圆环上有 N 颗彩色宝石,闪闪
发光。小A很爱惜这个圆环,天天把它带在身边。
一天,小 A 突然发现圆环上宝石的颜色是会变化的。他十分惊讶,仔细观察这
个圆环后发现,圆环上宝石的颜色每天变化一次,而且每颗宝石的颜色都等概率地
为特定的M种颜色之一。小A发现了这个秘密后,对圆环更是爱不释手,时时刻刻都
在研究。
又经过了一段时间,小 A 发现因为圆环上宝石的颜色不断变化,圆环有时会显
得比其他时候更美丽。为了方便比较,小 A 这样定义圆环的“美观程度” :
1. 设圆环上相同颜色的宝石构成的连续段长度分别为a 1 , a 2 , …, a n ;
2. 定义圆环的“美观程度”
R = a 1 * a 2 * … * a n 。
现在小 A 想知道,在上述前提下,圆环的“美观程度”的期望值 E(R)是多少。
因为如果知道了 E(R),他就可以判断每天变化出的新圆环是否比一般情况更美丽。
说明:“美观程度”的期望值即为对每种可能的圆环状态的“美观程度”与其
出现概率的乘积进行求和所得的值。

题解

一道概率dp题。
先来看看是链的情况:
dp[i][j]ij我一开始的想法是设dp[i][j]表示到了第i个宝石,前面有j个和他同色的期望美观程度
但是发现这样子不好转移。当加入一个不与前面同色的宝石时不好搞。
那么我们其实可以先就确定哪一段是同色的。
dp[i]ij(i+1)j我们只需设dp[i]表示到第i个宝石的期望,然后枚举后面的一个j,设(i+1)到j均为同色

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值