CF1267G Game Relics(期望、背包)

解析

有些遗憾的一个题。
几乎已经做出来了,但最后把买的代价看成平均数确实没有想到。
还有那个背包我觉得直接做会炸精度,就开始各种玩泥巴。
悲。

比较显然的结论是最优解必然是先抽抽抽然后再买买买。
剩 i 个宝物的时候抽出一个新宝物的期望代价比较好求,是 (ni+1)x2(\frac n i+1)\frac x 2(in+1)2x
那么现在就是这么一个问题:我有一些宝物,可以直接买,也可以花一定代价抽一个。
那我抽还是买?显然是要看剩下宝物的价格的平均数了。

再看看 ∑c<=10000\sum c<=10000c<=10000 的数据范围,不难想到做一个简单的dp fi,jf_{i,j}fi,j 表示 iii 个宝物价格和是 jjj 的概率。
直接做的话应该是统计方案数再除个组合数就行,但浮点运算组合数就是在搞笑了。
解决方法就是把组合数揉到dp转移的里面,其实也挺直观的。

然后还有一个问题就是怎么统计直接买的贡献。直观考虑的话,直接加上其价格之和就行,但是由于其子集也会被考虑到,所以正确的打开方式应该是统计价格的平均数。也就是说:把直接买的过程看成支付 nnn 次平均数的过程,这对最终答案显然是没有影响的。

//luogu
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define ull unsigned long long
#define debug(...) fprintf(stderr,__VA_ARGS__)
#define ok debug("OK\n")
using namespace std;const int N=5050;
const int mod=998244353;
inline ll read(){ll x(0),f(1);char c=getchar();while(!isdigit(c)) {if(c=='-')f=-1;c=getchar();}while(isdigit(c)) {x=(x<<1)+(x<<3)+c-'0';c=getchar();}return x*f;
}inline ll ksm(ll x,ll k){ll res(1);while(k){if(k&1) res=res*x%mod;x=x*x%mod;k>>=1;}return res;
}int n,m;
double f[105][10050],x;
int c[105];signed main(){#ifndef ONLINE_JUDGEfreopen("a.in","r",stdin);freopen("a.out","w",stdout);#endifint S=0;n=read();x=read();for(int i=1;i<=n;i++) c[i]=read(),S+=c[i];f[0][0]=1;for(int i=1;i<=n;i++){for(int k=n;k>=1;k--){for(int j=c[i];j<=S;j++) f[k][j]+=f[k-1][j-c[i]]/(1.0*(n-k+1)/k);}}double ans(0);for(int i=1;i<=n;i++){for(int j=0;j<=S;j++){      ans+=f[i][j]*min(1.0*j/i,x/2*(1.0*n/i+1));//if(f[i][j]>1e-9)//	printf("i=%d j=%d f=%.6lf ans=%.6lf\n",i,j,f[i][j],ans);}}printf("%.10lf\n",ans);return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/316797.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

铺地毯(矩形的交+前后缀矩形交)

铺地毯problemsolutioncodeproblem 给定矩阵的长宽 P,QP,QP,Q&#xff0c;矩阵从下往上从左往后编号增加&#xff0c;(0,0)∼(P,Q)(0,0)\sim (P,Q)(0,0)∼(P,Q)。 给定 nnn 张长宽平行于坐标轴的矩形地毯&#xff0c;左下角和右上角的坐标。 求被至少 n−1n-1n−1 张地毯覆盖…

AT2366 [AGC012F] Prefix Median(dp)

解析 确实精妙的一道题。 卡在最后一步dp转化上了&#xff0c;这个转化也确实是本题的难点。 当一个计数难以下手的时候&#xff0c;先想想如何判合法&#xff1f; 不难想到一个较为显然的贪心&#xff1a;假如和上一个一样&#xff0c;就填一个当前的最大值和最小值&#xf…

2020CCPC长春

2020CCPC长春 题号题目难度知识点AKrypton签到01背包BThe Tortoise and the HareCQuantum GeometryDMeaningless Sequence签到推公式EDefense of Valor LeagueFStrange Memory树上启发式合并GMonkey’s KeyboardHCombination LockIKawaii CourierJAbstract PaintingKRagdollLC…

如何使用AWS和Azure的配置存储服务保存读取配置

原文&#xff1a;Want to yank configuration values from your .NET Core apps? 作者&#xff1a;pauljwheeler译文&#xff1a;https://www.cnblogs.com/lwqlun/p/10508748.html译者&#xff1a;Lamond Lu示例源代码&#xff1a;https://github.com/lamondlu/LoadConfigurat…

基站建设(三元环计数+根号分治 / bitset)

基站建设problemsolutioncodeproblem 给定 nnn 个地点&#xff0c;以及每个地点的可靠度 RiR_iRi​。 有 mmm 条光纤架&#xff0c;每一条连接两个不同的地点&#xff0c;且是双向的。 测试基站由 444 个信号塔&#xff0c;有 222 个主信号塔和 222 个副信号塔。 要求主信号…

CF1060F Shrinking Tree(期望、树形dp)

解析 神题。 把每个节点提到根 rt 单独考虑。 设 dpi,jdp_{i,j}dpi,j​ 表示当 rt 进入 i 时子树内还有 j 条边未合并的方案的期望之和&#xff0c;gi,jg_{i,j}gi,j​ 表示当 rt 进入 i 的父亲时 i 的子树内&#xff08;包括连向父亲的边&#xff09;还有 j 条边未合并的方案…

Meaningless Sequence Gym - 102832D

Meaningless Sequence Gym - 102832D 题意&#xff1a; 给你n和c&#xff0c;an的公式如下图 让你求a0…an的和&#xff0c;mod 1e97 题解&#xff1a; 训练时推了好一阵子才和队友推出 我看网上正解为&#xff1a; 一个数的大小与它的二进制表示中的1的个数有关 ac(二进制…

【.NET Core项目实战-统一认证平台】第十六章 网关篇-Ocelot集成RPC服务

一、什么是RPCRPC是“远程调用&#xff08;Remote Procedure Call&#xff09;”的一个名称的缩写&#xff0c;并不是任何规范化的协议&#xff0c;也不是大众都认知的协议标准&#xff0c;我们更多时候使用时都是创建的自定义化&#xff08;例如Socket&#xff0c;Netty&#…

【学习笔记】无向图、有向图的三元环、四元环计数问题(根号分支+bitset)

三元环计数和四元环计数问题无向图三元环计数问题根号分治bitset无向图四元环计数问题有向图三四元环计数问题无向图三元环计数问题 根号分治 记 di:id_i:idi​:i 在原图中的度数。 按照以下规则改写无向图为有向图&#xff1a; 对于一条边 u,vu,vu,v。 如果两点度数不同&a…

.net Core2.2 WebApi通过OAuth2.0实现微信登录

前言微信相关配置请参考 微信公众平台 的这篇文章。注意授权回调域名一定要修改正确。微信网页授权是通过OAuth2.0机制实现的&#xff0c;所以我们可以使用 https://github.com/china-live/QQConnect 这个开源项目提供的中间件来实现微信第三方登录的流程。开发流程1、新建一个…

Nginx优化(重点)与防盗链(新版)

Nginx优化(重点)与防盗链 Nginx优化(重点)与防盗链一、隐藏Nginx版本号1、修改配置文件2、修改源代码 二、修改Nginx用户与组1、编译安装时指定用户与组2、修改配置文件指定用户与组 三、配置Nginx网页的缓存时间四、实现Nginx的日志切割1、data的用法2、编写脚本进行日志切割的…

Almost Sorted Array HDU - 5532

Almost Sorted Array HDU - 5532 题意&#xff1a; 如果一个数组的元素“按非递减或非递增顺序排列”&#xff0c;那么称这个数组有序。现在&#xff0c;LYD给了你一个数组a&#xff0c;他让你从中选择并移除仅仅1个元素&#xff0c;请问剩下的元素构成的数组有可能是有序的吗…

CF906D:Power Tower(拓展欧拉定理、暴力)

解析 大降智题。 受相逢是问候的影响&#xff0c;第一眼直接线段树&#xff0c;写完WA完才发现这个玩意没有结合律。 然后开始用 xyz(xy)yz−1x^{y^z}(x^y)^{y^{z-1}}xyz(xy)yz−1 这样的东西嗯做&#xff0c;结果只是在玩泥巴。 lemma&#xff1a;迭代求 φ\varphiφ 的次数是…

CodeForces730E Award Ceremony(拓扑排序+结论)

CF730E. Award Ceremonyproblemsolutioncodeproblem 题目链接 题目大意&#xff1a; 给出 nnn 个队封榜时的榜单 aia_iai​ 和揭榜时的变化情况 did_idi​。 揭榜时&#xff0c;这个队的名次会变化 tit_iti​。 注意在别的队揭榜时&#xff0c;自己队的排名也是动态变化的…

.Netcore 2.0 Ocelot Api网关教程(番外篇)- Ocelot v13.x升级

由于Ocelot系列博客好久没更新&#xff08;差不多有10个月的时间了&#xff09;&#xff0c;在此先说声抱歉&#xff0c;Ocelot系列会继续更新下去。在写上一篇配置管理的时候发现官方文档已经和以前的不一样&#xff0c;而Ocelot也从5.0版本更新到了13.x版本&#xff0c;进行了…

CF765F Souvenirs(暴力、线段树)

解析 比较神奇的一道题。 考虑一个常规套路&#xff1a;把询问离线&#xff0c;移动右端点&#xff0c;维护左端点答案。 考虑暴力维护&#xff0c;对于当前的 aixa_ixai​x&#xff0c;左侧如图所示的这两条线上的点都可以产生新的可能答案。 容易构造使得单次产生的新点是…

Hard Disk Drive HDU - 4788

Hard Disk Drive HDU - 4788 题意&#xff1a; 通常制造商认为1“kilo”等于1000&#xff0c;但操作系统会认为是1024。 因此&#xff0c;当你购买了一个100MB的硬盘&#xff0c;电脑却只显示大约有95MB&#xff0c;这缺失了大约5MB。 对于硬盘的大小&#xff0c;有多种单位描…

货币系统(二分)

problem 【题目描述】 你在 NOIP 2018 的赛场上遇到了「货币系统」一题。你没有写出这题&#xff0c;导致网友的国度简化货币系统的任务失败了。网友的国度的货币系统现在十分混乱。 网友的国度现今有两套货币系统「忘忧」和「网游」。为了方便使用&#xff0c;它们有一个共用…

ASP.NET Core 沉思录 - 环境的思考

我的博客换新家啦&#xff0c;新的地址为&#xff1a;https://clrdaily.com :-D今天我们来一起思考一下如何在不同的环境应用不同的配置。这里的配置不仅仅指 IConfiguration 还包含 IWebHostBuilder 的创建过程和 Startup 的初始化过程。0 太长不读环境造成的差异在架构中基本…

区域赛铜牌专题(一)

区域赛铜牌专题 题号题目知识点HDU 5532Almost Sorted Array贪心,LISHDU 5533Dancing Stars on MeHDU 5536Chip FactoryHDU 5538House BuildingHDU 5510BazingaHDU 5512PagodasHDU 4788Hard Disk DriveHDU 4821String计蒜客 42405TriangleHDU 4810Wall PaintingHDU 4771Steali…