HDU - 5245 概率
JoyfulHDU - 5245
题目大意:有N*M个正方形,进行k次涂色,每次会随机的选两个正方形作为一个矩形区域的顶点,然后把这个区域内的涂色,最后问k次之后,预计被涂了色的正方形有几个(也就是数学期望),转化成整数输出。
数学期望的定义是一切可能的取值xi与对应的概率Pi(=xi)之积的和,所以就想到了求出每个正方形被涂色的概率,然后一个正方形的权值就是1,所以把每个正方形的被涂色的概率加起来就是答案。因为是进行k次涂色,那么k中至少有一次被涂到的概率就是1-k次都涂不到的概率。
至于怎么算它不被涂到的概率呢?首先因为作为顶点的两个正方形是选择是互不影响的,每个都有n*m种选择,所以总的方案就是n*m*n*m。然后不把当前正方形包含在矩形内的方案有多少,可以画图理解。

红色正方形就是我们目前要求的正方形,因为不能把它包含在内,那么两个正方形的选择应该在同一侧,就像上图的蓝色部分,然后在同一侧的两个正方形的选择是互不影响的,也就是所有正方形个数的平方。而蓝色部分重叠了绿色部分,所以绿色部分得去掉。
#include<cstdio>
#define pf(x) (x*x)
typedef long long ll;
int main()
{
int t=,T,n,m,k;
scanf("%d",&T);
while(t<=T)
{
scanf("%d%d%d",&n,&m,&k);
ll sum=1ll*pf(n)*pf(m);
double ans=0.0;
for(int i=;i<=n;i++)
for(int j=;j<=m;j++)
{
ll num=;
num+=pf(1ll*n*(j-))+pf(1ll*n*(m-j));//左右两侧的方案
num+=pf(1ll*m*(i-))+pf(1ll*m*(n-i));//上下两侧的方案
num-=pf(1ll*(i-)*(j-))+pf(1ll*(i-)*(m-j));//上侧两角的方案
num-=pf(1ll*(n-i)*(j-))+pf(1ll*(n-i)*(m-j));//下侧两角的方案
double no=1.0*num/sum,kno=1.0;
for(int kk=;kk<k;kk++)
kno*=no;
ans+=1.0-kno;
}
printf("Case #%d: %.0f\n",t++,ans);
}
return ;
}
我不是一个粉刷匠
HDU - 5245 概率的更多相关文章
- Joyful HDU - 5245 概率问题
Sakura has a very magical tool to paint walls. One day, kAc asked Sakura to paint a wall that looks ...
- J - Joyful HDU - 5245 (概率)
题目链接: J - Joyful HDU - 5245 题目大意:给你一个n*m的矩阵,然后你有k次涂色机会,然后每一次可以选定当前矩阵的一个子矩阵染色,问你这k次用完之后颜色个数的期望. 具体思路 ...
- HDU 5985 概率
n种硬币各有cnt[i]枚,每轮下其有p[i]概率保留,问各种硬币只有它存活到最后一轮的概率. 设k轮后i硬币存活概率$a[i][k]=(1-p^k_i)^{cnt[i]}$ 则最后只有第i种硬币存活 ...
- HDU 5245 Joyful(概率题求期望)
D - Joyful Time Limit:1000MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64u Submit S ...
- HDU 5245 上海大都会 J题 (概率期望)
这道题的概率可以单独考虑每个格子对期望的贡献值.因为其实每个格子是否被选都可以认为是独立的,单独一个格子贡献的期望为1*(该格子K次被选的概率),所以答案其实就是每个格子K次被选中的概率之和. #in ...
- HDU 5245 Joyful(期望)
http://acm.hdu.edu.cn/showproblem.php?pid=5245 题意: 给出一个n*m的矩阵格子,现在有k次操作,每次操作随机选择两个格子作为矩形的对角,然后将这范围内的 ...
- hdu 1203 概率+01背包
I NEED A OFFER! Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Sub ...
- HDU 4405 (概率DP)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4405 题目大意:飞行棋.如果格子不是飞行点,扔骰子前进.否则直接飞到目标点.每个格子是唯一的飞行起点 ...
- hdu 4465 概率称号
http://acm.hdu.edu.cn/showproblem.php?pid=4465 第一直觉概率DP但很快被否定,发现只有一个简单的二项分布,但感情的表达,没有对生命和死亡的例子.然后找到准 ...
随机推荐
- Graph、DFS、BFS
Graph.java package Graph; import LinearLIst.bag.Bag; import edu.princeton.cs.algs4.In; public class ...
- C#开发微信公众平台-就这么简单(转载)(附原文链接)
一直使用的是一百八的诺鸡鸭,没有想去接触看起来风风火火的移动互联网:但因工作需要维护一个微信公众订阅号,考虑以前有做网站的基础,就想着做个简单的微信后台管理:看了官方的开发文档,比狗哥地图的短许多,又 ...
- No compiler is provided in this environment. Perhaps you are running on a JR
maven编译项目时出错,提示信息如下: [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3 ...
- 服务端相关知识学习(一)之什么是zookeeper
什么是zookeeper zookeeper是分布式协调服务,可以在分布式系统中共享配置.协调锁资源.提供命名服务那分布式协调服务又是个什么东西呢?首先我们来看“协调”是什么意思.在一个并发的环境里, ...
- 三、maven学习-高级
maven父子工程
- Linux学习笔记:7个ssh命令用法
通过远程控制管理多台服务器. 远程工具:telnet.ssh.vnc ssh采用密文的传输方式,简单安全.Secure Shell 缩写 SSH. 1.基本用法 ssh 192.168.1.1 默认使 ...
- 前后端分离-模拟数据之RAP2快速入门
是啥? RAP是一个可视化接口管理工具 通过分析接口结构,动态生成模拟数据,校验真实接口正确性, 围绕接口定义,通过一系列自动化工具提升我们的协作效率.我们的口号:提高效率,回家吃晚饭! 可视化编辑, ...
- vue移动端出现遮罩层时在遮罩层滑动时禁止遮罩层下方页面滑动
h5页面 点击出现弹框时 在遮罩层上面滑动时 下方的页面会出现滑动现象 解决方法 我知道的有以下两种 在遮罩层标签上添加@touchmove.prevent 把遮罩层显示时把下方的父盒子css设置为固 ...
- md加密 16位 32位
16位大写 //生成MD5 public static String getMD5(String message) { String md5 = ""; try { Message ...
- 7.Struts2拦截器及源码分析
1.Struts2架构图 2.Struts2 执行过程分析 1.首先,因为使用 struts2 框架,请求被Struts2Filter 拦截 2.Struts2Filter 调用 DisPatche ...