CF895E Eyes Closed (期望)】的更多相关文章

题目链接 利用期望的线性性质: \(E(sum) = E(x_l) + E(x_{l+1})+ E(x_{l+2}) +.. E(x_r)\) 然后就考虑对于交换时两个区间元素的改动. 假设这两个区间的长度分别为\(L_1,L_2\),和为\(S_1,S_2\) 那么对于第一个区间元素的期望为. \(E(x_i) = \dfrac{L_1 - 1}{L_1} * E(x_i) + \dfrac{1}{L_1}*\dfrac{L_2}{S_2}\) 对于第二个区间也是这样. 然后用线段树维护一下就…
Desctiption 传送门:Portal 大致题意: 给你一个序列, 支持两种操作: 1 l1 r1 l2 y2 在\([l1, r1]\)随机选择一个数a, \([l2, r2]\) 内随机选择一个数b, 交换a, b. 2 l r 询问一个区间的期望. \[ n \leq 200000; a_i \leq 1e9 \] Solution 根据==期望线性性==,只需要维护出==每个位置元素值的期望==就可以. ==区间操作期望==问题的经典套路是==维护出每个位置的期望==. 考虑一个数…
luogu description 一个序列\(a_i\),支持一下两种操作. \(1\ \ l_1\ \ r_1\ \ l_2\ \ r_2\): 随机交换区间\([l_1,r_1]\)和\([l_2,r_2]\)中的两个值. \(2\ \ l\ \ r\):查询\(\sum_{i=l}^ra_i\)的期望. sol 设两个交换区间的和分别是\(s_1,s_2\),长度分别是\(len_1,len_2\). 考虑区间\([l_1,r_1]\)中的一个元素\(x\),在交换后它的期望值会变为:…
题意 Sol 今天考试的T3,,我本来留了一个小时去写.但是T2一刚就刚了两个小时 最后也没来的及写.. 然后考完 开始写,,25min就A了.. 感觉自己太高估自己的思维,太低估自己的码力了... 这题比较简单吧 期望的和等于和的期望 然后线段树维护每个节点的值就可以了 交换的时候分自己不变和变成哪个数讨论一下 #include<cstdio> #include<cstring> #include<algorithm> #include<map> #inc…
题目链接 codeforces895E. Eyes Closed 题解 线段树维护期望和 写出修改两区间的相互影响 就是一个区间修改 emmm考试的代码过不去,这么松的spj都过不去Orz,每次和答案差0.001*ans左右... 可能是我每次直接对区间暴力统计右区间的影响,然后直接打个修改区间tag.... 求解 代码 std: #include <iostream> #include <cstring> #include <cmath> #include <c…
E. Eyes Closed time limit per test 2.5 seconds memory limit per test 256 megabytes input standard input output standard output Vasya and Petya were tired of studying so they decided to play a game. Before the game begins Vasya looks at array a consis…
题目链接  Eyes Closed 题意  两个人玩一个游戏,现在有两种操作: 1.两个人格子挑选一个区间,保证两个的区间不相交.在这两个区间里面各选出一个数,交换这两个数. 2.挑选一个区间,求这个区间的和的期望. 对于第一种操作,先求出两个区间的长度$len1$和$len2$,再求出两个区间的期望和$s1$和$s2$. 对于第一个区间,我们先把这个区间里的所有数(期望值)乘上$(len1 - 1)/(len1)$,再加上$s2/len1/len2$ 对于第二个区间,我们先把这个区间里的所有数…
       首先说明一下,hibernate的延迟加载特性(lazy).所谓的延迟加载就是当真正需要查询数据时才执行数据加载操作.因为hibernate当中支持实体对象,外键会与实体对象关联起来.如果没有这一特性,当查询某一个含有外键的实体对象时,hibernate会把其他实体对象的数据都查询出来.简单的来说,当你想查询某个对象时,实际上调用了多条查询语句.有了延迟加载特性,就避免了这种情况的发生,当你真正的使用get另外一个实体对象时,才再执行下面一条查询语句.           但有些时…
Android 程序开发完成后,如果要发布到互联网上供别人使用,就需要将自己的程序打包成Android 安装包文件(Android Package,APK),其扩展名为.apk.使用run as 也能生成一个APK安装包,但是使用run as 生成的是测试的安装包,只供开发者自己测试使用. 接下来就以HelloWord程序为例演示如何生成正式的APK文件. 1.右键项目名称,依次选择Android Tools——>Explort Signed Application Package,如图所示:…
3143: [Hnoi2013]游走 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 2264  Solved: 987[Submit][Status][Discuss] Description 一个无向连通图,顶点从1编号到N,边从1编号到M. 小Z在该图上进行随机游走,初始时小Z在1号顶点,每一步小Z以相等的概率随机选 择当前顶点的某条边,沿着这条边走到下一个顶点,获得等于这条边的编号的分数.当小Z 到达N号顶点时游走结束,总分为所有获得的分数…