染色 color

染色 color

题目描述

 

有一块矩阵平板,分成n*m个格子,一开始全是白色。
在这上面进行k次染色,每次染色按照如下步骤:
1. 随机选择一个格子,称为A。
2. 随机选择一个格子,称为B。
3. 将由A B确定边界的矩阵染成红色。
每次随机选择都是独立的,每个格子被选到的概率相等,A B可能重叠。
下面是一块5*7的平板可能的染色过程:
a) (0,1) (3,2)
b) (3,6) (4,0)
c) (0,6) (0,5)
则染色后将有22个红色格子和13个白色格子

 

求出染色后红色格子的期望个数。

 

 

 

 

输入

 

仅一行k n m

 

 

输出

 

仅一个实数表示所求答案,保留六位小数

 

 

样例输入

2 2 1

样例输出

1.875000

提示

 

[样例输入二]
3 5 7
[样例输出二]
19.119179
[数据规模]
100%:0≤k≤100,1≤n,m≤1000

 


solution

考虑一个格子被染的概率。

 

由于它可以多次被染,我们用1-它k次都没被染到的概率。

那也就是一次的没染k次方。

 行与列分开考虑

fx[i]=(double)(2*i*(n-i+1)-1)/(n*n); // 第i行被选的概率

列类似

注意精度

posted @   liankewei123456  阅读(207)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示