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但很快被否定,发现只有一个简单的二项分布,但感情的表达,没有对生命和死亡的例子.然后找到准 ...
随机推荐
- 基于keepalived搭建mysql双主高可用
目录 概述 环境准备 keepalived搭建 mysql搭建 mysql双主搭建 mysql双主高可用搭建 概述 传统(不借助中间件)的数据库主从搭建,如果主节点挂掉了,从节点只能读取无法写入,只能 ...
- Jmeter的基础使用一安装、启动、关联、断言
一.下载Jmeter,配置环境变量 下载完解压即可, 环境变量配置: -------在环境变量中添加新变量JMETER_HOME:D:\jmeter\apache-jmeter-4.0 ------- ...
- Java lesson18homework
package com.xt.lesson19; import java.util.Scanner;import java.util.Set;import java.util.TreeSet; /** ...
- 解决maven依赖包下载慢的问题
修改maven 目录下setting.xml配置文件 在mirrors中添加如下配置即可 <mirror> <id>alimaven</id> <name&g ...
- SQLite数据库_c/s架构的心得
1.使用是Navicat Premium软件, Microsoft Windows版本. 2.选择SQLite并新建数据库: 3.将建好的SQLite数据库,放到新建的项目的debug文件下中, 并在 ...
- idea2019 Tomcat9 Tomcat Localhost log 乱码
网上一顿搜索,基本没用,可能版本不一样. idea2019 tomcat9解决方案: 找到Tomcat的安装目录,进入conf目录 打开logging.properties 找到java.util.l ...
- 养成一个SQL好习惯
要知道sql语句,我想我们有必要知道sqlserver查询分析器怎么执行我么sql语句的,我么很多人会看执行计划,或者用profile来监视和调优查询语句或者存储过程慢的原因,但是如果我们知道查询分析 ...
- 打印从1到最大的n位数(考虑大数问题)
void Print1ToMaxOfNDigits(int n) { if(n <= 0) { return; } int * number = new int[n]; for(int i = ...
- JavaMaven【七、插件使用】
配置pom.xml 配置在那个周期的那个阶段执行该插件的功能 上图是配置了使用插件source3.0.1,该插件的功能是打包源码 并配置了在package阶段后执行打包源码的操作jar-no-fork ...
- sql分页查询(2005以后的数据库)和access分页查询
sql分页查询: select * from ( select ROW_NUMBER() over(order by 排序条件) as rowNumber,* from [表名] where 条件 ) ...