rr轮游戏中前ii个物品有多少个被选到?_当前聚焦
题目传送门
题目大意:有 n n n 个物品,进行 r r r 轮游戏,每轮中从左到右依次选择物品,每个物品有 p [ i ] p[i] p[i] 的几率被选到,被选过的不会再选,每轮游戏只选一个物品,第 i i i 个物品价值为 d [ i ] d[i] d[i],问期望价值。
(相关资料图)
题解
第 i i i 个物品在 r r r 轮游戏中被选到的几率取决去前 i − 1 i-1 i−1 个物品有多少个被选到了,假如有 k k k 个,那么第 i i i 个物品被选到的概率就是 1 − ( 1 − p [ i ] ) r − k 1-(1-p[i])^{r-k} 1−(1−p[i])r−k, ( 1 − p [ i ] ) r − k (1-p[i])^{r-k} (1−p[i])r−k 的意思是剩下 r − k r-k r−k 轮中每一轮都选不到 i i i 的概率,用 1 1 1 减掉就是有任意一轮选到的概率了。
那么可以得到递推方程:设 f [ i ] [ j ] f[i][j] f[i][j] 表示在 r r r 轮游戏中前 i i i 个物品有 j j j 个被选到的概率,那么有 f [ i ] [ j ] = f [ i − 1 ] [ j − 1 ] × ( 1 − ( 1 − p [ i ] ) r − j + 1 ) [ j > 0 ] + f [ i − 1 ] [ j ] × ( 1 − p [ i ] ) r − j \begin{aligned} f[i][j]=&f[i-1][j-1]\times (1-(1-p[i])^{r-j+1})[j>0]+\\ &f[i-1][j]\times(1-p[i])^{r-j} \end{aligned} f[i][j]=f[i−1][j−1]×(1−(1−p[i])r−j+1)[j>0]+f[i−1][j]×(1−p[i])r−j
柿子中上面的表示选到第 i i i 个的概率,下面表示选不到的概率。
求出 f f f 之后,我们就可以得到每个物品被选到的概率,用这个概率乘上每个物品的价值再求个和就是答案了。
第 i i i 个物品被选到的概率: ∑ j = 0 min ( i , r ) − 1 f [ i − 1 ] [ j ] × ( 1 − ( 1 − p [ i ] ) r − j ) \sum_{j=0}^{\min(i,r)-1}f[i-1][j]\times(1-(1-p[i])^{r-j}) j=0∑min(i,r)−1f[i−1][j]×(1−(1−p[i])r−j)
如果你在洛谷拿到了 40 40 40 分的好成绩,那么就要注意数组初始化和答案是否换行的问题了。
代码如下:
#include#includeusing namespace std;#define maxn 230int T,n,r;double p[maxn],d[maxn],f[maxn][maxn],ans=0;double ksm(double x,int y){double re=1;while(y){if(y&1)re*=x;x*=x;y>>=1;}return re;}int main(){scanf("%d",&T);while(T--){scanf("%d %d",&n,&r);for(int i=1;i<=n;i++)scanf("%lf %lf",&p[i],&d[i]);f[0][0]=1;ans=0;for(int i=1;i<=n;i++)for(int j=0;j<=min(i,r);j++){f[i][j]=ksm(1-p[i],r-j)*f[i-1][j];if(j)f[i][j]+=(1-ksm(1-p[i],r-j+1))*f[i-1][j-1];}for(int i=1;i<=n;i++){double tot=0;for(int j=0;j<=min(i,r)-1;j++)tot+=(1-ksm(1-p[i],r-j))*f[i-1][j];ans+=tot*d[i];}printf("%.10lf\n",ans);}}
标签:
相关推荐:
最新新闻:
- 台式机电脑电源供电不足怎么办?有哪些故障现象?-环球新消息
- 环球即时:OSA究竟有什么过人之处?OSA品牌服饰旗舰店
- 大显智能手机怎么样?大显智能手机配置
- rr轮游戏中前ii个物品有多少个被选到?_当前聚焦
- 德生收音机怎么选?德生性价比介绍
- 风暴英雄伊利丹天赋技能有哪些?解析全攻略|看点
- 天天资讯:nikond7000怎么样?nikond7000的使用技巧
- 软件开发中的“OO”到底是什么?真实案例解析OO理论与实践-天天热门
- 环球要闻:空调1.5匹是什么意思?空调1.5匹详情介绍
- 游戏设计有什么技巧?5个简单的游戏设计技巧:要闻
- 推荐21个高质量图片网站 免费免版权值得收藏
- 世界最新:配置完Kafka集群后 通过JavaAPI方式来操作
- 电脑如何快速截屏?四种常见的电脑截图方法
- 手机绳编织方法有哪些?手机绳的安装教程
- 陈奕迅唱过哪些歌?2015陈奕迅another eason‘s life演唱会歌单:世界速看料
- 什么是水冷机箱?水冷机箱和风冷机箱有什么区别?
- 即时:抖音发财灯笼怎么获得?抖音发财灯笼获取方法介绍
- 如何解决显卡驱动无法正常安装?联想启天M6900介绍及驱动
- 全球快看:无线监控设备多少钱?无线监控设备介绍
- Office2003序列号有哪些?Office2003专业版序列号和注册码分享
- 互联网时代 企业如何进行数字化营销?|全球热讯
- 艾尔文与花栗鼠2/花鼠明星俱乐部 详情介绍:世界快资讯
- 如何屏蔽热点资讯广告提示框?热点资讯怎么彻底卸载?
- 应用程序安装中的Android安全模型
- 每日信息:马斯洛需求层次理论 你处于哪个阶段?
- 360加速球怎样开启?加速球一直红色应该怎样解决?
- usb音箱没有声音?音响插电视上没声音怎么设置?
- 如何通过邮件群发工资条?outlook群发工资条失败咋办?
- 天天报道:自动称重系统是什么?自动称重系统怎么应用?
- pp助手怎么修复闪退?pp助手有什么用?
- sbsettings怎么设置?sbsettings设置的具体步骤
- 热议:PS5迎来系统更新:支持精英手柄了
- 步步高官网手机多少钱?步步高官网手机报价:当前最新
- 7款功能最强大的免费杀毒软件 你用过几个?
- Fc2视频打不开了怎么办?打开Fc2视频的步骤
- 全球观点:《原子之心》15分钟实机 2月21日正式发售
- 弈天棋缘客户端 v1.43怎么下载?下载步骤流程
- 步进电机概念、原理是什么?步进电机的控制策略及控制方式
- 职务与职级并行套改表 新旧“职务与职级并行”套改与晋升实例 环球精选
- 什么是磁力链接?网盘离线下载有哪些功能?
- taobaoprotect.exe是什么进程?taobaoprotect.exe进程占用内存的解决方法
- H5小游戏是什么意思?几款有意思的html游戏推荐
- java编程题:如何判断四个棋子连在一起?
- 出现此选项卡已经恢复是怎么回事?出现此选项卡已经恢复解决办法
- 全球时讯:免费下载国外视频的网站 你值得拥有
- 3dmax结合VRAY怎么制作展示厅效果?制作技巧
- 硬盘分区表都有什么修复方法?移动硬盘分区丢失后怎样找回?
- qq提取安装文件失败怎么办?压缩包无文件可提取咋回事?
- HTC手机如何找出手机的IMEI/MEID?方法步骤如下
- win10系统normal.dot在哪里?分享找到normal.dot文件的方法
- 什么是水冷机箱?水冷机箱和风冷机箱有什么区别?
- 如何解决显卡驱动无法正常安装?联想启天M6900介绍及驱动
- Office2003序列号有哪些?Office2003专业版序列号和注册码分享
- 如何屏蔽热点资讯广告提示框?热点资讯怎么彻底卸载?
- 360加速球怎样开启?加速球一直红色应该怎样解决?
- usb音箱没有声音?音响插电视上没声音怎么设置?
- 如何通过邮件群发工资条?outlook群发工资条失败咋办?
- pp助手怎么修复闪退?pp助手有什么用?
- sbsettings怎么设置?sbsettings设置的具体步骤
- Fc2视频打不开了怎么办?打开Fc2视频的步骤
- taobaoprotect.exe是什么进程?taobaoprotect.exe进程占用内存的解决方法
- 出现此选项卡已经恢复是怎么回事?出现此选项卡已经恢复解决办法
- 硬盘分区表都有什么修复方法?移动硬盘分区丢失后怎样找回?
- qq提取安装文件失败怎么办?压缩包无文件可提取咋回事?
- win10系统normal.dot在哪里?分享找到normal.dot文件的方法
- win7如何给文件设置密码?win7文件夹设置密码的具体步骤
- 如何做外链?做外链需要注意什么?
- secondary logon服务是什么?开启secondary logon服务详细方法
- 3dmark05怎么安装?3dmark05注册码分享
- 天天热议:直降1000元 华硕 ProArt 创 16 2022 年终大促
- 游戏神U要来了 AMD居然定在情人节上市 全球观天下
- 每日简讯:最高6GHz睿频 英特尔13代酷睿i9-13900KS带来超凡体验
- Teracopy怎么样?Teracopy功能的及使用方法
- 《霍格沃茨之遗》PC配置需求公布:推荐显卡1080 Ti
- 《龙背上的农家》现已发售 Steam褒贬不一