【luogu P3898】期望异或 / T3 / 大新闻(数位DP)(数学)
期望异或 / T3 / 大新闻
题目链接:luogu P3898
题目大意
有一个数,等概率选 0~n-1 里面的整数。
然后又 p 的概率可以知道这个数,然后选择 0~n-1 中一个异或它最大的数。
否则就是等概率选 0~n-1 里面的整数。
问你这两个数的异或值的期望值是什么。
思路
不难看出 p roll 出的两种情况我们可以分别讨论,然后再按概率乘起来加起来。
那首先不知道:
考虑枚举每一位看贡献的值:
那我们设 为 为 的概率,那就有 。
接着考虑如何求 。
我们不难想到可以把位数相同且不会超过 一起讨论。
的这一位都是 , 都是 。
然后 都是 。
那不难想到整段的就是 ,剩下一段可能有,可能没有。
有的话就是 ,没有的话这个值会小于 ,那就直接 。
总的来说,就是:
接着考虑求知道的。(这题最阴间的部分)
也是同样的,考虑看每一位是否有 。(而且我们要看的是 ,就直接把 减一)
如果是 ,那也是就说,它可以选 ,后面的就可以任意选,那后面一定可以匹配出 。
那就直接是贡献乘个数,直接就是 。
如果是 ,那你要是 才可以,就要前面没有搞满,你考虑统计有多少个搞满的,然后减去就是没有搞满的。(最后还要减去当前位选 的)
那你搞完这里之后,这里就是一个搞满的,那就要统计搞满的就要加上 。
接着再回来看 的时候统计搞满的要怎么变。
那你这个时候你可以选 也可以选 ,一种是搞满的一种是搞不满的。
那就是一半一半的概率,那原来可以搞满的就有一半不能搞满,就要除二。
然后就可以了。
代码
__EOF__

本文作者:あおいSakura
本文链接:https://www.cnblogs.com/Sakura-TJH/p/luogu_P3898.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/Sakura-TJH/p/luogu_P3898.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现