balls

 Accepts: 19
 Submissions: 55
 Time Limit: 6000/3000 MS (Java/Others)
 Memory Limit: 65536/65536 K (Java/Others)

问题描述
有nn个球,共有mm种颜色,第ii个球的颜色为jj的概率为\frac{a_{i,j}}{a_{i,1}+a_{i,2}+...+a_{i,m}}​a​i,1​​+a​i,2​​+...+a​i,m​​​​a​i,j​​​​。
对于第ii种颜色,若有xx个球,对答案的贡献为x^{2}x​2​​。
问答案的期望。
输入描述
若干组数据(大概55组)。
每组数据第一行两个整数n(1 \leq n \leq 1000), m(1 \leq m \leq 1000)n(1≤n≤1000),m(1≤m≤1000)。
接下来nn行每行mm个数表示a_i,j(1 \leq a_i,j \leq 100)a​i​​,j(1≤a​i​​,j≤100)
输出描述
对于每组数组,输出一行表示答案,保留两位小数。
输入样例
2 2
1 1
3 5
2 2
4 5
4 2
2 2
2 4
1 4
输出样例
3.00
2.96
3.20

val[i][j]表示第i个球颜色为j的概率。那么第i个球颜色为j的期望E[x[i][j]]=val[i][j]*1+(1-val[i][j])*0=val[i][j]

c[i]表示颜色为i的球的个数。题目要求的是 sum(E[c[i]^2]) i的值从1到m。

从最简单的来看 如果要求的是E[c[i]],那么它等于E[(x[1][i]+x[2][i]...+x[n][i])]

现在要求的是E[c[i]^2]=E[(x[1][i]+x[2][i]...+x[n][i])^2]。

里面展开的话就是任意两个相乘,拿出其中一项来看 E[x[k1][i]*x[k2][i]]

若k1==k2,那这个等式等于=val[k1][i]

若k1!=k2,那这个等式等于=val[k1][i]*val[k2][i]

求和即是结果了。

代码:

#pragma warning(disable:4996)
#include <iostream>
#include <algorithm>
#include <cmath>
#include <vector>
#include <string>
#include <cstring>
#include <queue>
using namespace std;const int maxn = 1005;int n, m;
double val[maxn][maxn];int main()
{//freopen("i.txt", "r", stdin);//freopen("o.txt", "w", stdout);while (scanf("%d%d", &n, &m) != EOF){for (int i = 1; i <= n; i++){double sum = 0;for (int j = 1; j <= m; j++){scanf("%lf", &val[i][j]);sum += val[i][j];}for (int j = 1; j <= m; j++){val[i][j] = val[i][j] / sum;}}double ans = 0;for (int i = 1; i <= m; i++){double sum = 0;for (int j = 1; j <= n; j++){sum += val[j][i];ans += val[j][i];ans -= val[j][i] * val[j][i];}ans += (sum*sum);}printf("%.2lf\n", ans);}//system("pause");return 0;
}

转载于:https://www.cnblogs.com/lightspeedsmallson/p/5173955.html

HDU 5570:balls 期望。。。。。。。。。。。。。。。相关推荐

  1. hdu 5570(数学期望)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5570 [分析] 用A[i][j]表示第i个球为颜色j的概率 用c[j]表示颜色为j的球的个数 用E[x ...

  2. HDU 5570 balls

    代码不是自己写的,这道题看上去是个好题.先囤着. #include<cstdio> #include<cstring> using namespace std; int n; ...

  3. HDU 4611 Balls Rearrangement 数学

    Balls Rearrangement 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=4611 Description Bob has N balls ...

  4. hdu 5419(数学期望)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5419 题解: 首先分母是C(m,3),考虑如何求出分子 考虑数学期望的独立性,我们首先可以用线性的时间 ...

  5. 2019杭电多校第七场 Kejin Player HDU - 6656 (期望)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6656 题意:一种游戏,从i级升到i+1级,需要氪金a[i]RMB,有的概率成功,有1-的概率变成x[i ...

  6. HDU 4405 概率期望DP

    有 0到 n 个格子.掷骰子走路,求出到终点的数学期望,有飞行的路线. dp[i] 存储在i位置走到终点的期望. 转移方程dp[i]=(dp[i+1] ----> dp[i+6])/6+1; 有 ...

  7. hdu 5481(数学期望+区间合并)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5481 题解: 实际上求的是所有子集的并集长度之和. 把坐标离散化之后,可以单独考虑每一段区间在并集内部 ...

  8. Aeroplane chess HDU - 4405(期望dp)

    题意: 飞行棋.有n+1格,开始时在0号格子,每一步都要扔一个dice(六个面,概率相同)哪一面朝上他就会向前走x+i步.当x+i大于等于N的时候,游戏结束.另外,地图上有m条航线.第i条航线可以直接 ...

  9. HDU - 4586 数学期望

    题意 有一个骰子有n个面,掷到每一个面的概率是相等的,每一个面上都有相应的钱数.其中当你掷到某些面 一共m个面之一时,你有多掷一次的机会.问最后所得钱数的期望. 分析 数学期望是什么 数学期望就是一种 ...

最新文章

  1. PHP设计模式之访问者模式
  2. 澎思科技马原:AI安防竞争还未结束,落地进入后发优势时代
  3. 破解 Windows 2003终端服务许可证
  4. TCP 的连接建立:采用三报文握手
  5. html显示yuv,CS50 HTML和CSS基础(介绍最简单的HTML和CSS)
  6. visual studio输入法打不了中文_我为什么不用Mac自带输入法
  7. VTK:网格之TableBasedClipDataSetWithPolyData2
  8. 三菱gx软件初始化失败怎么解决_三菱PLC的常见问题大全!
  9. LRU缓存机制—leetcode146
  10. 职场上个人的核心技术_职场上的情绪管理
  11. 让TortoiseGit记住帐号密码方法
  12. [Node.js] 模块化 -- NodeJS之heroAdmin后台管理系统基础
  13. AngularJS 国际化 支持记录语言刷新后语言不变
  14. principle中文_principle与principal,长得像,发音还一样!又头疼了!
  15. HDU2001 计算两点间的距离【入门】
  16. monkey配置及简单报告生成(安卓)
  17. 用户故事与敏捷方法笔记---估算用户故事
  18. 中国保安服务行业发展状况及前景预测分析报告2022-2028年版
  19. layer的iframe用法整理
  20. 单片机蜂鸣器的控制程序与驱动电路图

热门文章

  1. mybatis 业务逻辑
  2. L1L2 Regularization的原理
  3. channel is already closed due to channel error;
  4. Python While 循环语句
  5. RHCE系列之权限管理----ACL(访问控制列表)
  6. 二维随机变量函数卷积公式的推导
  7. Spring 在xml文件中配置Bean
  8. ThinkPHP5.0-多语言切换
  9. 用 Chrome 扩展实现修改
  10. 集合之五:Set接口