20190716-T1-礼物
呵呵,我暴力WA了
这个题充分考验了大家对数学的理解(麦蒙大多在胡诌)
但是确实如此啊。
看数据范围想状压。(我额嗯嗯想到暴力?)
然后设出一个可爱的$dp$式(主语当然不是我,是出题人大佬)
$f_s$表示二进制组昂态(状态)为$s$时的期望。
那么我们可以从$s'$转移过来,其中$s' or\ s = s$或$s' and\ s =s$($and$和$or$均为位运算)(内两个式子是等效的)
那么有:
$f_s= \sum\limits_{i=1}^N p_i \times f_{s'}+(1-\sum \limits_{i=1}^N p_i) \times f_s +1$
真是恐怖,$f_s$转移需要自己~
但是表慌,数学老师可以拯救你,哒哒哒
移项。式子变为:
$\begin{array}{lcl}0 & = & \sum \limits_{i=1}^N p_i \times f_{s'}-f_s \times \sum \limits_{i=1}^N p_i +1\\f_s & = & \frac{\sum \limits_{i=1}^N p_i \times f_{s'}+1}{\sum \limits_{i=1}^N p_i}\end{array}$
还是比较简单的。
#include <iostream>
#include <cstdio>
#include <cstring> //#include "debug.h" #define N 22
using namespace std;
int n;
double p[N];
long long val,dat;
double dp[(<<)+];
int main(){
scanf("%d",&n);
for (int i=;i<=n;i++){
scanf("%lf%lld",&p[i],&dat);
val=val+dat;
}
cout<<val<<endl;
double ons=,sums=;
for (int s=;s<<<n;s++){
ons=sums=;
for (int i=;i<=n;i++){
if (s&(<<(i-))){
ons+=dp[s^(<<(i-))]*p[i];//cout<<bin(s,n)<<"<<"<<bin(s^(1<<(i-1)),n)<<endl;
sums+=p[i];//cout<<sums<<endl;
}
}//cout<<"O:"<<ons<<" S:"<<sums<<endl;
if(sums==){
// cout<<"T0T"<<NL;
continue;
}
dp[s]=(ons+1.0)/sums;
}
// pour(dp,1,1<<n,10,"Dp");
printf("%.3lf\n",dp[(<<n)-]);
return ;
}
20190716-T1-礼物的更多相关文章
- 模拟4题解 T1礼物
T1 题目描述 夏川的生日就要到了.作为夏川形式上的男朋友,季堂打算给夏川买一些生 日礼物. 商店里一共有种礼物.夏川每得到一种礼物,就会获得相应喜悦值Wi(每种 礼物的喜悦值不能重复获得). 每次, ...
- 20190716NOIP模拟赛T1 礼物(概率dp+状压)
题目描述 夏川的生日就要到了.作为夏川形式上的男朋友,季堂打算给夏川买一些生 日礼物. 商店里一共有种礼物.夏川每得到一种礼物,就会获得相应喜悦值Wi(每种 礼物的喜悦值不能重复获得). 每次,店员会 ...
- 7.16 NOIP模拟测试4 礼物+通讯+奇袭
T1 礼物 题目大意:n个物品,每次有pi的概率买到,可以重复买,也可以什么都没买到,但算一次购买,问把所有东西都买到的期望次数.对于10%的数据,N = 1;对于30%的数据,N ≤ 5;对于100 ...
- SNOI2017(BZOJ5015~5018)泛做
T1:礼物 想错方向了,实际上很简单. 我想的是:显然题目求的是$\sum_{i=1}^{n} i^{k}2^{i}$,然后或许可以通过化式子变成与n无关的复杂度? 然后就不停往斯特林数反演和下降幂的 ...
- NOIP模拟测试2-5
该补一下以前挖的坑了 先总结一下 第二次 T1 搜索+剪枝 #include<cstdio> #include<iostream> #define ll long long u ...
- 2019.2.25 模拟赛T1【集训队作业2018】小Z的礼物
T1: [集训队作业2018]小Z的礼物 我们发现我们要求的是覆盖所有集合里的元素的期望时间. 设\(t_{i,j}\)表示第一次覆盖第i行第j列的格子的时间,我们要求的是\(max\{ALL\}\) ...
- 「题解」:07.16NOIP模拟T1:礼物
问题 A: 礼物 时间限制: 1 Sec 内存限制: 256 MB 题面 题目描述 夏川的生日就要到了.作为夏川形式上的男朋友,季堂打算给夏川买一些生 日礼物. 商店里一共有种礼物.夏川每得到一种礼 ...
- bzoj 3920: Yuuna的礼物
Description 转眼就要到Karin的生日了!Yuuna她们想为她准备生日礼物!现在有许多礼物被排列成了一个一维序列,每个礼物都有一个价值.Yuuna对这个序列十分感兴趣.因此,你需要多次回答 ...
- 【BZOJ4827】【HNOI2017】礼物(FFT)
[BZOJ4827][HNOI2017]礼物(FFT) 题面 Description 我的室友最近喜欢上了一个可爱的小女生.马上就要到她的生日了,他决定买一对情侣手 环,一个留给自己,一 个送给她.每 ...
- BZOJ 2142 礼物 组合数学 CRT 中国剩余定理
2142: 礼物 Time Limit: 10 Sec Memory Limit: 259 MBSubmit: 1450 Solved: 593[Submit][Status][Discuss] ...
随机推荐
- drupal-note2 drush运行make文件
进入durpal项目的根目录中执行 drush make build-openpublic.make /path/to/webroot 参考: Managing Drush make files fo ...
- Servlet3.0要点小结
1. 注解配置Servlet @WebServlet name属性: servlet名称 value属性或urlPatterns属性: servlet映射路径, 可配置多个 initParams属性: ...
- 2016.10.6初中部上午NOIP普及组比赛总结
2016.10.6初中部上午NOIP普及组比赛总结 中了病毒--病毒--病毒-- 进度: 比赛:AC+0+0+20=120 改题:AC+0+AC+20=220 Stairs 好--简--单!递推就过了 ...
- js 移动端点击复制字符串
function copyStr(val) { //val 是要复制的字符串 var input = document.createElement("input"); input. ...
- windows下VisualSVN Server搭建
转自:https://www.cnblogs.com/shuilangyizu/p/10365604.html 使用 VisualSVN Server来实现主要的 SVN功能则要比使用原始的 SVN和 ...
- 深入浅出 Java Concurrency (34): 线程池 part 7 线程池的实现及原理 (2)[转]
线程池任务执行流程 我们从一个API开始接触Executor是如何处理任务队列的. java.util.concurrent.Executor.execute(Runnable) Executes t ...
- Spring MVC(十)--通过表单序列化传递参数
通过表单序列化传递参数就是将表单数据转化成字符串传递到后台,序列化之后参数请求变成这种模式param1=value1&¶m2=value2,下面用代码实现. 1.创建表单 &l ...
- Linux RHEL7(CentOS7源) 安装 Nginx
安装步骤 1.添加 Nginx 源地址 CentOS7 默认没有提供 Nginx 的源,但 Nginx 自己提供了 sudo rpm -Uvh http://nginx.org/packages/ce ...
- 安装office2019
win10系统安装office2019 安装文件下载 https://pan.baidu.com/s/1VnqJ-hNwysPKBhdzE3FSww#list/path=%2F&parentP ...
- Activiti流程变量
流程变量在整个工作流中扮演很重要的作用 例如:请假流程中有请假天数.请假原因等一些参数都为流程变量的范围.流程变量的作用域范围是流程实例.也就是说各个流程实例的流程变量是不相互影响的. 添加流程变量 ...