聯合集訓6 11 期望題

2021-08-20 18:30:59 字數 1943 閱讀 6177

因為a1

a

1是必須要減完的,所以我們只要求出對於ai

(i=2...n)

a i(

i=

2...n)

在a−1 a−1

減完前期望被減了多少次,最後加上a1

a

1即可。因為期望的線性性,我們只需要分別考慮每乙個ai

a

i即可。

不妨以考慮a1

,a2 a1,

a2

為例。我們可以把其看成二維平面上的乙個點(a

1,a2

) (a1

,a2)

,每次分別有12

1

2的概率向下/向左移動乙個位置,移到座標軸停止,問在a2

a

2方向期望移動了多少步,可以通過列舉終止位置來算。

1. a

2 a2取了

i i

個時a1

' role="presentation" style="position: relative;">a1a

1已取完,即停在(0

,a2−

i)( 0,

a2−i

)的概率pi

=(a1

+i−1

i)(1

2)a1

+ip i=

(a1+

i−1i

)(12

)a1+

i,這樣的貢獻是

i i

。 2. a

2' role="presentation" style="position: relative;">a2a

2先取完,這樣的概率顯然是1−

∑pi 1−∑

pi

,貢獻是a2

a 2。

那麼我們把所有的ai

a

i扔到乙個桶陣列裡,考慮在o(

max)

o

(max

)的時間內一併求解所有問題。我們可以從小到大列舉

k k

,維護∑j

=0kp

j' role="presentation" style="position: relative;">∑kj

=0pj

∑j=0

kpj和

∑kj=

0j⋅p

j ∑j=

0kj⋅

pj

,那麼對於等於k+

1 k+1

的aia

i的個數sk

+1s k+

1,它們的貢獻就是sk

+1⋅(

(k+1

)(1−

∑pj)

+∑j⋅

pj) sk+

1⋅((

k+1)

(1−∑

pj)+

∑j⋅p

j)

。**:

#include

#include

#include

#include

#include

#define n 100010

#define ll long long

#define up(x,y) (x=(x+(y))%mod)

using namespace std;

const int mod=323232323;

int n,a[n],b[n];

ll fac[n<<1],ifac[n<<1];

ll ksm(ll a,ll b)

ll c(ll a,ll b)

int main()

printf("%lld",(ans+a[1])%mod);

return

0;}

概率論09 期望

描述量 描述隨機變數最完備的方法是寫出該隨機變數的概率分布。然而,正如我們在前面章節看到的,概率分布的表達往往都比較複雜,資訊量很大。這如同我們購置汽車的時候,一輛汽車的全面資料可以說是海量的,比如汽車尺寸,油箱大小等等。我們選擇一輛汽車時,往往只使用有限的幾個具有代表性的量來代表汽車的主要特徵,比...

03 期望和協方差

協方差 概率分布 p x 的函式 f x 的平均值被稱為 f x 的期望,離散情況寫平均值是對不同的 x 的概率進行加權的。e f xp x f x 連續變數的情形下,期望由對應的概率密度的積分的形式表示 e f p x f x dx給定有限的 n 個點,滿足某個概率分布或概率密度函式,期望可以通過...

bzoj 3450 期望分數

自己只能想到o n 2 的 dp i j 表示 以i結尾,長度為j的o串的概率,然後在每次遇到x的時候算分數.正解是 dp i 表示前i個的答案,d i 表示以i結尾的期望長度.推的時候它用d i d i d i 1 d i 1 來算新增的貢獻,有點不明白為什麼可以這樣 平方的期望應該不等於期望的平...