洛谷1654 OSU (期望)

2022-05-14 13:48:11 字數 808 閱讀 8265

點此看題面

立方的期望顯然不等於期望的立方,這種東西自己舉幾個例子就知道了。

考慮我們維護到第\(i\)個位置為止的答案為\(ans_i\),連續長度期望為\(a_i\),連續長度平方期望為\(b_i\),連續長度立方期望為\(c_i\)。

一次期望的長度轉移是顯然的:

\[a_i=a_i(a_+1)

\]對於二次期望,考慮\((x+1)^2=x^2+2x+1\),可以借助一次期望一同計算:

\[b_i=a_i(b_+2a_+1)

\]知道二次期望,三次期望就同理了:

\[c_i=a_i(c_+3b_+3a_+1)

\]至於答案,由於它求的是極長連續段,所以我們有:(只有不連續了才能算答案)

\[ans_i=ans_+(1-a_i)c_

\]但注意這樣沒有計算最後乙個連續段,因此最終的答案為\(ans_n+c_n\)。

具體實現時沒必要開陣列。

#include#define tp template#define ts template#define reg register

#define ri reg int

#define con const

#define ci con int&

#define i inline

#define w while

#define n 100000

#define db double

using namespace std;

int n;

int main()

洛谷1654 BZOJ4318 OSU 期望

題目鏈結 題意 有乙個長度為n nn的序列,每個數字都是0 00或1 11,告訴你每個數是1 11的概率。其中長度為x xx的連續的一段1 11對答案的貢獻是x 3x 3 x3,求答案的期望。n 1 e5 n 1e5 n 1 e5,四捨五入保留一位小數。題解 我們考慮乙個dp。最簡單的dp是n 2n...

洛谷 OSU (期望DP)

題目位址 設 f i 表示以 i 結尾的連續 1 區間的期望貢獻 x 1 g i 表示以 i 結尾的連續 1 區間的期望貢獻 x 2 則有 f i p i f i 1 1 g i p i g i 1 2f i 1 1 因為 x 1 2 x 2 2x 1 類似的,可以設 h i 表示以 i 結尾的連續...

LUOGU P1654 OSU 概率期望

傳送門 解題思路 首先考慮對於乙個點來說,如果這個點是1的話,那麼對於答案來說 ans 1 3 ans 3 3 ans 2 3 ans 1 這對於上乙個答案來說其實貢獻了 3 ans 2 3 ans 1 那麼只需要維護乙個 ans 2 與 ans 的期望,然後轉移到 ans 就行了。include ...