【非原创】LightOJ - 1284 Lights inside 3D Grid【概率期望】
学习博客:
题意:
在一个三维的空间,每个点都有一盏灯,开始全是关的,
现在每次随机选两个点,把两个点之间的全部点,开关都按一遍;问k次过后开着的灯的期望数量;
题解:
肯定不能从随机抽取两个数这里入手的,要求开着的灯的数量就从对每一盏灯,操作结束后灯开着的概率,然后将这些概率求和就是对于整个矩阵到最后开着的灯的数量了,这就把矩阵的问题落实到了对于求每个坐标的概率的问题。
对每个点单独计算贡献,即k次过后每个点开关被按了奇数次的期望
一个点如果被包到所选空间里,那么说明选的两个点,x坐标在这个点两侧,y坐标在这个点两侧,z坐标在这个点两侧;
对于一维的,可以用求出两个点在x这一点两侧的概率。然后三维的只要当成三个一维的乘起来就行了。
E=
求法:
代码(亦非原创):
1 #include<bits/stdc++.h>
2
3 using namespace std;
4
5 int t,x,y,z,m;
6
7 int main()
8
9 {
10
11 scanf("%d",&t);
12
13 int cas=0;
14
15 while(t--)
16
17 {
18
19 scanf("%d%d%d%d",&x,&y,&z,&m);
20
21 double ans=0.0;
22
23 for(int i=1;i<=x;i++)
24
25 for(int j=1;j<=y;j++)
26
27 for(int k=1;k<=z;k++)
28
29 {
30
31 double p=0.0;
32
33 p= 1.0-1.0*((x-i)*(x-i)+(i-1)*(i-1))/(x*x);
34
35 p*=1.0-1.0*((y-j)*(y-j)+(j-1)*(j-1))/(y*y);
36
37 p*=1.0-1.0*((z-k)*(z-k)+(k-1)*(k-1))/(z*z);
38
39
40
41 ans+=0.5-0.5*pow(1.0-2*p,1.0*m);
42
43 }
44
45 printf("Case %d: %.11lf\n",++cas,ans);
46
47 }
48
49 return 0;
50
51 }
【非原创】LightOJ - 1284 Lights inside 3D Grid【概率期望】的更多相关文章
- LightOJ 1284 - Lights inside 3D Grid 概率/期望/二项式定理
题意:给你一个长宽高为x,y,z的长方体,里面每个格子放了灯,再给你k次选取任意长方体形状的区块,对其内所有灯开或关操作,初始为关,问亮灯数量的期望值. 题解:首先考虑选取区块的概率,使某个灯在被选取 ...
- LightOJ 1284 Lights inside 3D Grid (数学期望)
题意:在一个三维的空间,每个点都有一盏灯,开始全是关的.现在每次随机选两个点,把两个点之间的全部点,开关都按一遍,问k次过后开着的灯的期望数量: 析:很容易知道,如果一盏灯被按了奇数次,那么它肯定是开 ...
- LightOJ - 1284 Lights inside 3D Grid —— 期望
题目链接:https://vjudge.net/problem/LightOJ-1284 1284 - Lights inside 3D Grid PDF (English) Statistic ...
- LightOJ - 1284 Lights inside 3D Grid (概率计算)
题面: You are given a 3D grid, which has dimensions X, Y and Z. Each of the X x Y x Z cells contains a ...
- LightOJ1284 Lights inside 3D Grid (概率DP)
You are given a 3D grid, which has dimensions X, Y and Z. Each of the X x Y x Z cells contains a lig ...
- Lights inside 3D Grid LightOJ - 1284 (概率dp + 推导)
Lights inside 3D Grid LightOJ - 1284 题意: 在一个三维的空间,每个点都有一盏灯,开始全是关的, 现在每次随机选两个点,把两个点之间的全部点,开关都按一遍:问k次过 ...
- LightOj_1284 Lights inside 3D Grid
题目链接 题意: 给一个X * Y * Z 的立方体, 每个单位立方体内都有一盏灯, 初始状态是灭的, 你每次操作如下: 1)选择一个点(x1, y1, z1) 再选择一个点(x2, y2, ...
- uva 11605 - Lights inside a 3d Grid(概率)
option=com_onlinejudge&Itemid=8&page=show_problem&problem=2652" style=""& ...
- 3D Grid Effect – 使用 CSS3 制作网格动画效果
今天我们想与大家分享一个小的动画概念.这个梦幻般的效果是在马库斯·埃克特的原型应用程序里发现的.实现的基本思路是对网格项目进行 3D 旋转,扩展成全屏,并呈现内容.我们试图模仿应用程序的行为,因此 ...
随机推荐
- 使用存储过程在mysql中批量插入数据
一.在mysql数据库中创建一张表test DROP TABLE IF EXISTS `test`; CREATE TABLE `test` ( `id` INT (11), `name` VARCH ...
- Connection reset by peer的常见原因及解决办法 RST 大文件上传
Connection reset by peer的常见原因及解决办法 Connection reset by peer的常见原因 - 简书 https://www.jianshu.com/p/263e ...
- 小白的springboot之路(十九)、集成swagger(com.spring4all篇)
0-前言 集成swagger,有两种方式: 一种在前面已经介绍过了,直接集成官方的springfox-swagger2的方式,这种方式需要在配置类中配置 第二种方式是这里要介绍的方式,国人写的com. ...
- Spark 将DataFrame所有的列类型改为double
Spark 将DataFrame所有的列类型改为double 1.单列转化方法 2.循环转变 3.通过:_* 1.单列转化方法 import org.apache.spark.sql.types._ ...
- 用于理解Java的前8个图表
尤其记得高中上数学课的时候,数学老师课堂上最喜欢说的一句话:"数形结合百般好":这些年过去,数学虽然学的并未多么好,但这句话倒是一直烙印在我的脑海,在其他学科的学习当中,我总是尽量 ...
- spark SQL (一)初识 ,简介
一, 简介 Spark SQL是用于结构化数据处理的Spark模块.与基本的Spark RDD API不同,Spark SQL提供的接口为Spark提供了关于数据结构和正在执行的计算的更多信息.在内部 ...
- markdown 编辑器使用教程---字体、颜色、表格换行、链接等
资源池: 绿色版markdown编辑器:点击这里 提取码:ftf9 1.标题 #一级标题 ##二级标题 ###三级标题 ####四级标题 #####五级标题 ######六级标题 一级标题 二级标题 ...
- BGP总结(一)
0.AS 狭义:在RIP.OSPF和EIGRP等IGP协议中,AS表示只运行此单种协议的路由域 广义:运行多个IGP协议的路由域,多个IGP协议之间通过路由重发布来实现通信,AS和AS之间通过BGP来 ...
- 图的深度优先遍历算法(DFS)
搜索算法有很多种,本次文章主要分享图(无向图)的深度优先算法.深度优先算法(DFS)主要是应用于搜索中,早期是在爬虫中使用.其主要的思想有如下: 1.先访问一个节点v,然后标记为已被访问过2.找到第一 ...
- bzoj1500: [NOI2005]维修数列 (Splay+变态题)
Time Limit: 10 Sec Memory Limit: 64 MBSubmit: 11353 Solved: 3553 [Submit][Status][Discuss] Descrip ...