Luogu P1654 OSU! | 期望】的更多相关文章

题目链接 很妙的一道题. 题目要求$X^3$的期望值. 直接求不好求. 考虑先求出$X$和$X^2$的期望值,然后再求$X^3$的期望值. 迎.刃.而.解. #include<iostream> #include<cstdio> using namespace std; double p[100005],x1[100005],x2[100005],x3[100005]; int main() { int n=0; scanf("%d",&n); for(…
传送门 解题思路 首先考虑对于一个点来说,如果这个点是1的话,那么对于答案来说 $(ans+1)^3=ans^3+3*ans^2+3*ans+1$,这对于上一个答案来说其实贡献了 $3*ans^2+3*ans+1$,那么只需要维护一个 $ans^2$与 $ans$的期望,然后转移到$ans$就行了. #include<iostream> #include<cstdio> #include<cstring> using namespace std; ; inline in…
写法和CF235B Let's Play Osu!非常相似.但是这个题厉害就厉害在统计的贡献里面有一个平方的期望,而这个平方的期望和期望的平方是完全不一样的,需要另外统计,逻辑上仔细想一想就会明白. 期望\(dp\)没那么可怕,但是确实非常不容易调试.所以一定要在第一次推出式子的时候,保证式子的正确.哪怕先写一个暴力,也比写出锅过不了样例根本没法调的正解要好. #include <bits/stdc++.h> using namespace std; const int N = 100010;…
P1654 OSU! 题目描述 osu 是一款群众喜闻乐见的休闲软件. 我们可以把osu的规则简化与改编成以下的样子: 一共有\(n\)次操作,每次操作只有成功与失败之分,成功对应\(1\),失败对应\(0\),\(n\)次操作对应为\(1\)个长度为\(n\)的\(01\)串.在这个串中连续的 \(X\) 个 \(1\) 可以贡献 \(X^3\) 的分数,这\(x\)个\(1\)不能被其他连续的\(1\)所包含(也就是极长的一串\(1\),具体见样例解释) 现在给出\(n\),以及每个操作的成…
传送门 题目背景 原 <产品排序> 参见P2577 题目描述 osu 是一款群众喜闻乐见的休闲软件. 我们可以把osu的规则简化与改编成以下的样子: 一共有n次操作,每次操作只有成功与失败之分,成功对应1,失败对应0,n次操作对应为1个长度为n的01串.在这个串中连续的 XX 个 11 可以贡献 X^3X3 的分数,这x个1不能被其他连续的1所包含(也就是极长的一串1,具体见样例解释) 现在给出n,以及每个操作的成功率,请你输出期望分数,输出四舍五入后保留1位小数. 输入输出格式 输入格式:…
Code: #include<cstdio> #include<algorithm> using namespace std; const int maxn = 1000000 + 4; double f[maxn], g[maxn], h[maxn]; int main() { int n; scanf("%d",&n); for(int i = 1;i <= n; ++i) { double perc; scanf("%lf"…
https://www.lydsy.com/JudgeOnline/problem.php?id=4318 https://www.luogu.org/problemnew/show/P1654 看来自己还是naive... 注意:和的期望=期望的和:平方的期望!=期望的平方,立方的期望!=期望的立方 那么怎么算一组变量的和的立方的期望呢?当然是不能用和的期望的立方的 a,b互相独立时, $E((a+b)^3)=E(a^3+3*a^2*b+3*a*b^2+b^3)=E(a^3)+3*E(a^2)…
4318: OSU! 题目连接: http://www.lydsy.com/JudgeOnline/problem.php?id=4318 Description osu 是一款群众喜闻乐见的休闲软件. 我们可以把osu的规则简化与改编成以下的样子: 一共有n次操作,每次操作只有成功与失败之分,成功对应1,失败对应0,n次操作对应为1个长度为n的01串.在这个串中连续的 X个1可以贡献X^3 的分数,这x个1不能被其他连续的1所包含(也就是极长的一串1,具体见样例解释) 现在给出n,以及每个操作…
[BZOJ4318]OSU! Description osu 是一款群众喜闻乐见的休闲软件.  我们可以把osu的规则简化与改编成以下的样子:  一共有n次操作,每次操作只有成功与失败之分,成功对应1,失败对应0,n次操作对应为1个长度为n的01串.在这个串中连续的 X个1可以贡献X^3 的分数,这x个1不能被其他连续的1所包含(也就是极长的一串1,具体见样例解释)  现在给出n,以及每个操作的成功率,请你输出期望分数,输出四舍五入后保留1位小数.  Input 第一行有一个正整数n,表示操作个…
Description osu 是一款群众喜闻乐见的休闲软件.  我们可以把osu的规则简化与改编成以下的样子:  一共有n次操作,每次操作只有成功与失败之分,成功对应1,失败对应0,n次操作对应为1个长度为n的01串.在这个串中连续的 X个1可以贡献X^3 的分数,这x个1不能被其他连续的1所包含(也就是极长的一串1,具体见样例解释)  现在给出n,以及每个操作的成功率,请你输出期望分数,输出四舍五入后保留1位小数.  Input 第一行有一个正整数n,表示操作个数.接下去n行每行有一个[0,…
这两道题是一样的...... 我就说一下较难的那个 OSU!: 这道15行的水题我竟然做了两节课...... 若是f[i][0]=(1-p)*f[i-1][0]+(1-p)*f[i-1][1],f[i][1]=p*(f[i-1][0]+1.0)+p*(f[i-1][1]+OOXX); 我们合并一下f[i]=p*1.0+p*OOXX=p*OX; OX:就是期望x^3的差,也就是(x+1)^3=x^3+3*x^2+3*x+1.0,中的3*x^2+3*x+1.0,这样我们要维护x^2以及x注意这里的x…
貌似是一道很裸的期望\(DP\).直接说思路: 设\(f[i]\)表示到\(i\)位置时的期望分数,但是只有\(f[i]\)的话我们发现是无法转移的,我们还需要知道到\(i\)位置时的期望连续长度,于是我们再设一个\(g[i]\)表示到\(i\)位置时的期望连续长度,\(g[i]\)可以\(O(1)\)转移,转移方程为:\(g[i]=(g[i-1]+1)p[i]\),\(p[i]\)为\(i\)位置成功的概率.进而我们来yy\(f[i]\)的转移: 1.\(i\)位置为"O",设\(x…
非常好的递推 公式啥的懒得写了,直接放链接哈哈哈https://www.luogu.org/problemnew/solution/P1291 #include<bits/stdc++.h> #define rep(i,x,y) for(register int i=x;i<=y;i++) #define dec(i,x,y) for(register int i=x;i>=y;i--) #define int long long #define In freopen("…
期望DP 设\(g[i]\)表示前i个的连续1的期望长度,\(h[i]\)表示前i个连续1的长度的平方的期望,\(f[i]\)表示前i个的期望得分 由期望的线性性质,我们可以考虑统计新增一个对答案的贡献 \[ E((x+1)^3)-E(x^3)=E(3x^2+3x+1) \] 然后递推统计即可 #include <cstdio> #include <algorithm> #include <cstring> using namespace std; int n; dou…
[题意]有一个长度为n的01序列,每一段极大的连续1的价值是L^3(长度L).现在给定n个实数表示该位为1的概率,求期望总价值.n<=10^5. [算法]期望DP [题解]后缀长度是一个很关键的量,设g[i]表示前i个的期望后缀长度.根据全期望公式,依赖于第i-1位为0或1:(以下所有公式最后省略+(1-ai)*0) $$g[i]=a_i*(g[i-1]+1)$$ 设f[i]表示前i个的期望长度,当第i-1位为1时,f[i]相对于f[i-1]的后缀多了[ (g[i-1]+1)^3 ] - [ g…
这次要求$x^3$的概率和. 直接维护三个值$x$ $x^2$ $x^3$的期望. 概率的平方不等于平方的概率. #include <map> #include <ctime> #include <cmath> #include <queue> #include <cstdio> #include <cstring> #include <iostream> #include <algorithm> using…
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4318 期望DP,因为平方的期望不等于期望的平方,所以用公式递推: 第一次推错了囧,还是看这位的博客改过来的:https://blog.csdn.net/Clove_unique/article/details/62422100 代码如下: #include<iostream> #include<cstdio> #include<cstring> using nam…
\(x\) 为该位置有 \(1\) 的期望. 统计两个值 : \(suma\) 和 \(sumb\). \(suma\) 表示连续 \(X\) 个 \(1\) , \(X\) 的平方的期望, \(sumb\) 表示 \(X\) 的期望. 因为 \((x + 1)^3 = x^3 + 3x^2 + 3x + 1\) 所以每次把答案加上 \(3suma + 3sumb + 1\) 乘以该位置有 \(x\) 的期望即可. 而 \(suma = x * (suma + 2sumb + 1)\), \(s…
数学期望 P=Σ每一种状态*对应的概率. 因为不可能枚举完所有的状态,有时也不可能枚举完,比如抛硬币,有可能一直是正面,etc.在没有接触数学期望时看到数学期望的题可能会觉得很阔怕(因为我高中就是这么认为的,对不起何老板了QwQ),避之不及. 但是现在发现大多数题就是手动找公式或者DP推出即可,只要处理好边界,然后写好方程,代码超级简短.与常规的求解不同,数学期望经常逆向推出. 比如常规的dp[x]可能表示到了x这一状态有多少,最后答案是dp[n].而数学期望的dp[x]一般表示到了x这一状态还…
因为是我这只蒟蒻个人的汇总嘛,可能有些奇♂怪的东西或者不规范的语言出现啦,见谅见谅 搬了一些到知识汇总里,删了一些过时和无用的,少了好多=.= 1.STL_queue 经实践验证,!qs.empty()快于qs.size() 2.luogu p2114 起床困难综合症 if(位运算) 括号++; update on 2018.7.2: 发现位运算的优先级比小于号那一堆还低... 3.luogu p1853 投资的最大效益 当背包问题中代价/价值为$kn$时可以在循环中用$kn/k$来表示,这样可…
2021-10-14 P2577 [ZJOI2004]午餐 2021-10-13 CF815C Karen and Supermarket(小小紫题,可笑可笑) P6748 『MdOI R3』Fallen Lord(sort(a+1,a+1+n,greater<int>()); 真好用) P4161 [SCOI2009]游戏 P1707 刷题比赛 2021-10-12 CF1573A Countdown P2717 寒假作业 P7868 [COCI2015-2016#2] VUDU P1660…
题目背景 原 维护队列 参见P1903 题目描述 某一天WJMZBMR在打osu~~~但是他太弱逼了,有些地方完全靠运气:( 我们来简化一下这个游戏的规则 有nnn次点击要做,成功了就是o,失败了就是x,分数是按combo计算的,连续aaa个combo就有a×aa\times aa×a分,combo就是极大的连续o. 比如ooxxxxooooxxx,分数就是2×2+4×4=4+16=202 \times 2 + 4 \times 4 = 4 +16=202×2+4×4=4+16=20. Seve…
期望长度 定义 这里期望长度表示一段序列连续长度的期望.具体来说,对于一段序列,每个点都有一个概率连续和断开.求所有连续序列和的期望. 当然,对于以上期望长度的定义,我们只需要求出每个点存在的期望的和即可.但是题目永远不会这么简单. Osu! Osu!是一个音乐游戏,玩家需要对音符在恰当时候进行敲击来通关.一次到位的敲击为o,不到位的为x.一段连续到位的敲击,即combo次数为这段序列的长度. 我们接下来讨论的三个题都和这个游戏有关. level1 一段Osu!序列为一串字符,包括'o','x'…
问题描述 osu!是一个基于<押忍!战斗!应援团><精英节拍特工><太鼓达人>等各种音乐游戏做成的一款独特的PC版音乐游戏.游戏中,玩家需要根据音乐的节奏,通过鼠标点击或敲击按键合成一首歌曲. 一张osu!的地图是由若干个“音”排列而成的.在本题中,对于每个音我们只需要考虑成功点击和错过(miss)这两种情况.对于一张osu!地图,玩家的完成情况可以用一个01串表示(0代表miss,1代表成功).在本题中,使用如下计分规则:将玩家完成一张地图的01串中所有的0删去,则这…
Description osu 是一款群众喜闻乐见的休闲软件.  我们可以把osu的规则简化与改编成以下的样子:  一共有n次操作,每次操作只有成功与失败之分,成功对应1,失败对应0,n次操作对应为1个长度为n的01串.在这个串中连续的 X个1可以贡献X^3 的分数,这x个1不能被其他连续的1所包含(也就是极长的一串1,具体见样例解释)  现在给出n,以及每个操作的成功率,请你输出期望分数,输出四舍五入后保留1位小数.      Input 第一行有一个正整数n,表示操作个数.接下去n行每行有一…
传送门 题目背景 原 维护队列 参见P1903 题目描述 某一天WJMZBMR在打osu~~~但是他太弱逼了,有些地方完全靠运气:( 我们来简化一下这个游戏的规则 有nn次点击要做,成功了就是o,失败了就是x,分数是按combo计算的,连续aa个combo就有a\times aa×a分,combo就是极大的连续o. 比如ooxxxxooooxxx,分数就是2 \times 2 + 4 \times 4 = 4 +16=202×2+4×4=4+16=20. Sevenkplus闲的慌就看他打了一盘…
Description osu 是一款群众喜闻乐见的休闲软件.  我们可以把osu的规则简化与改编成以下的样子:  一共有n次操作,每次操作只有成功与失败之分,成功对应1,失败对应0,n次操作对应为1个长度为n的01串.在这个串中连续的 X个1可以贡献X^3 的分数,这x个1不能被其他连续的1所包含(也就是极长的一串1,具体见样例解释)  现在给出n,以及每个操作的成功率,请你输出期望分数,输出四舍五入后保留1位小数.      Input 第一行有一个正整数n,表示操作个数.接下去n行每行有一…
题目描述 对于刚上大学的牛牛来说,他面临的第一个问题是如何根据实际情况申请合适的课程. 在可以选择的课程中,有 2n2n 节课程安排在 nn 个时间段上.在第 ii(1 \leq i \leq n1≤i≤n)个时间段上,两节内容相同的课程同时在不同的地点进行,其中,牛牛预先被安排在教室 c_ici​ 上课,而另一节课程在教室 d_idi​ 进行. 在不提交任何申请的情况下,学生们需要按时间段的顺序依次完成所有的 nn 节安排好的课程.如果学生想更换第 ii 节课程的教室,则需要提出申请.若申请通…
4318: OSU! Time Limit: 2 Sec  Memory Limit: 128 MBSubmit: 1473  Solved: 1174[Submit][Status][Discuss] Description osu 是一款群众喜闻乐见的休闲软件.  我们可以把osu的规则简化与改编成以下的样子:  一共有n次操作,每次操作只有成功与失败之分,成功对应1,失败对应0,n次操作对应为1个长度为n的01串.在这个串中连续的 X个1可以贡献X^3 的分数,这x个1不能被其他连续的1所…
[pixiv] https://www.pixiv.net/member_illust.php?mode=medium&illust_id=62369739 Description osu 是一款群众喜闻乐见的休闲软件. 我们可以把osu的规则简化与改编成以下的样子: 一共有n次操作,每次操作只有成功与失败之分,成功对应1,失败对应0,n次操作对应为1个长度为n的01串.在这个串中连续的 X个1可以贡献X^3 的分数,这x个1不能被其他连续的1所包含(也就是极长的一串1,具体见样例解释) 现在给…