caioj1270: 概率期望值1:小象涂色
DP深似海,得其得天下。——题记
叕叕叕叕叕叕叕叕叕叕叕(第∞次学DP内容)被D飞了,真的被DP(pa)了。这次D我的是大叫着第二题比较难(小象涂色傻b题)的Mocha(zzz)大佬,表示搞个概率DP,后面还有什么区间、状压、插头DP,不知道这个坑怎么填。唉,心疼。
讲讲这道题吧,在ZZZ大佬的帮助下终于看懂了题,然后他告诉我:
其实全部的箱子都是一样的
然后聪明(???)的我就发现,答案要求的其实就是每个箱子,颜色最后变成0~c-1的期望,再乘以颜色那个数字罢了。
So,弄一个f数组,f[i][j]表示染了i次色,变成j颜色的期望。
然后,上代码。很好理解,我写了注释。
#include<cstdio>
#include<iostream>
#include<cstring>
using namespace std;
int cs[];
double f[][];//f[i][j]表示染了i次色,变成j颜色的期望
int main()
{
int T;
scanf("%d",&T);
while(T--)
{
int n,c,K,mmax=,x,y;
scanf("%d%d%d",&n,&c,&K);
memset(cs,,sizeof(cs));
for(int i=;i<=K;i++)
{
scanf("%d%d",&x,&y);
for(int j=x;j<=y;j++)
{
cs[j]++;
mmax=max(mmax,cs[j]);
}
} memset(f,,sizeof(f));f[][]=1.0;//一开始全部都是1
for(int i=;i<=mmax;i++)
for(int j=;j<c;j++)
{
f[i][j]+=f[i-][j]/;//有1/2的概率,不会被涂色
for(int k=;k<c;k++)f[i][(j*k)%c]+=f[i-][j]/(*c);//枚举所有可能被涂的颜色
//被涂的概率是1/2,被涂k颜色概率为1/c,合起来就是1/(2*c)
} double ans=0.0;
for(int i=;i<=n;i++)//枚举每一个箱子
for(int j=;j<c;j++)//被涂成j颜色
ans+=f[cs[i]][j]*j;//i被涂有cs[i]次,由于要求颜色和,乘以颜色
printf("%.9lf\n",ans);
}
return ;
}
caioj1270: 概率期望值1:小象涂色的更多相关文章
- 【NOIP模拟题】小象涂色(概率+期望+递推)
表示数学是个渣... 其实只需要推出每个箱子k次以后的颜色为i的概率就能算出期望了.. 对于区间[l, r]的箱子因为是任意颜色且任意取,所以概率分别为1/c和1/2,那么整体概率就为这两个的乘积.根 ...
- BZOJ2375: 疯狂的涂色
题目:http://www.lydsy.com/JudgeOnline/problem.php?id=2375 小t非常喜爱画画,但是他还是一个初学者.他最近费尽千辛万苦才拜到已仙逝的达 芬奇为师(神 ...
- bzoj 2375: 疯狂的涂色
2375: 疯狂的涂色 Time Limit: 5 Sec Memory Limit: 128 MB Description 小t非常喜爱画画,但是他还是一个初学者.他最近费尽千辛万苦才拜到已仙逝的 ...
- 涂色问题(Python)
题目:将一个圆形等分成N个小扇形,将这些扇形标记为1,2,3,-,N.现在使用M种颜色对每个扇形进行涂色,每个扇形涂一种颜色,且相邻的扇形颜色不同,问有多少种不同的涂法?(N≥1,M≥3) 参考:ht ...
- 「CQOI2007」「BZOJ1260」涂色paint (区间dp
1260: [CQOI2007]涂色paint Time Limit: 30 Sec Memory Limit: 64 MBSubmit: 2057 Solved: 1267[Submit][St ...
- NOIp十连测 涂色游戏
[问题描述]小A 和小B 在做游戏.他们找到了一个n 行m 列呈网格状的画板.小A 拿出了p 支不同颜色的画笔,开始在上面涂色.看到小A 涂好的画板,小B 觉得颜色太单调了,于是把画板擦干净,希望涂上 ...
- [CSP-S模拟测试]:涂色游戏(DP+组合数+矩阵快速幂)
题目描述 小$A$和小$B$在做游戏.他们找到了一个$n$行$m$列呈网格状的画板.小$A$拿出了$p$支不同颜色的画笔,开始在上面涂色.看到小$A$涂好的画板,小$B$觉得颜色太单调了,于是把画板擦 ...
- 题解 P1283 【平板涂色】
P1283 平板涂色 数据范围也太小了qwq..适合本萌新暴搜 小小的剪枝: 1.用pre预处理出每块矩形上方的矩形,pre[i][0]记录数目(如果数据范围再开大一点,直接1~n枚举判断可能超时qw ...
- 1260: [CQOI2007]涂色paint
Description 假设你有一条长度为5的木版,初始时没有涂过任何颜色.你希望把它的5个单位长度分别涂上红.绿.蓝.绿.红色,用一个长度为5的字符串表示这个目标:RGBGR. 每次你可以把一段连续 ...
随机推荐
- jquery中的全选,全不选
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 用AOP来让你的JS代码变得更有可维护性吧
此文已由作者吴佳祥授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 好吧我承认这是篇任务. 最近看到个消息,ES2017已经定稿了,心想,我去,还完全没了解ES2016呢,ES ...
- POJ-1088滑雪,典型的动态规划题,与NYOJ-10skiing一样,但NYOJ上时限是3s,用搜索可以过,但在POJ上就超时了~~
滑雪 Time Limit: 1000MS Memory Limit: 65536k ...
- [POJ2443]Set Operation(bitset)
传送门 题意:给出n个集合(n<=1000),每个集合中最多有10000个数,每个数的范围为1~10000,给出q次询问(q<=200000),每次给出两个数u,v判断是否有一个集合中同时 ...
- [转]maven编译时出现读取XXX时出错invalid LOC header (bad signature)
maven编译时出现读取XXX时出错invalid LOC header (bad signature) 一.发现问题右击pom.xml,run as —> maven install,会看到c ...
- 【2018 Multi-University Training Contest 3】
01:https://www.cnblogs.com/myx12345/p/9420198.html 02: 03: 04:https://www.cnblogs.com/myx12345/p/940 ...
- 《TCP/IP详解卷1:协议》——第5章 RARP:逆地址解析协议(转载)
1.引言 具有本地磁盘的系统引导时,一般是从磁盘上的配置文件中读取IP地址.但是无盘机,如X终端或无盘工作站,则需要采用其他方法来获得IP地址. 网络上的每个系统都具有唯一的硬件地址,它是由网络接口生 ...
- msp430入门编程26
msp430中C语言开发工具应用 msp430入门学习 msp430入门编程
- Python中排序的灵活使用
Python中列表按指定标准排序实例 概述 本题需要先输入机器的数目和任务的数目. 在接下来的n行中每行分别包含机器的最大执行时间和机器所能执行任务的最大强度. 在接下来的n行中每行分别包含任务执行时 ...
- hihocoder 1873 ACM-ICPC北京赛区2018重现赛 D Frog and Portal
http://hihocoder.com/problemset/problem/1873 时间限制:1000ms 单点时限:1000ms 内存限制:512MB 描述 A small frog want ...