概率期望學習筆記

2022-04-05 20:34:05 字數 3122 閱讀 3484

由於自己初學概率期望,學的都是簡單題,就不分開寫部落格了.

非常入門的概率期望題目。但因為題目意思比較噁心.

一共有\(2 * n\)個鞋頭,第\(i\)次操作前還有\(2 * n - (i - 1) * 2\)個鞋頭,由於我們選出乙個後,它不能和自己綁,也不能和和它在同一條鏈上的綁。

所以

#include#include#includeusing namespace std;

const int n = 1e3 + 3;

double f[n];

int n;

double s;

int main()

printf("%.6lf\n",f[n]);

return 0;

}

較簡單概率期望dp,然而我還是不會做.

概率期望dp在很多時候都應當倒推.

這道題目網上題解的狀態定義比較模糊,蒟蒻看不懂,在這裡說一下自己的理解

\(f_\)表示當前桌子上還有\(i\)個紅牌未翻開\(j\)個黑牌未被翻開的,你的期望最優得分(再多得多少分)

#include#include#include#include#includeusing namespace std;

const int n = 5e3 + 3;

double f[2][n];

int cnt = 0;

int b,r;

int n;

double ans;

int main()

} printf("%.6lf\n",f[cnt][b] - 5e-7);

return 0;

}

同樣是概率期望的入門題目.

錯誤:入度統計反了

我們依舊考慮建反圖逆推\(f_i\)表示\(i - n\)的期望路徑長度

倒著dp即可

#include#include#include#include#include#includeusing namespace std;

const int n = 3e5 + 3;

int tot,n,m;

double f[n];

int head[n],in[n],d[n];

queue q;

struct edgee[n];

inline void add(int x,int y,int z)

inline void spfa()

} printf("%.2lf\n",f[1]);

}int main()

q.push(n);

spfa();

return 0;

}

首先放一下自己的錯誤:滾動陣列將\(f_=.....\)寫成了\(f_ += .....\)進行轉移

依舊是比較基礎的概率期望的dp

設\(f_\)表示第\(i\)次操作完成之後在\(j\)位置的概率

注意當\(j - w\)和\(j + w\)越界的時候特判一下。細節見**

#include#include#include#includeusing namespace std;

const int n = 205;

double f[2][n];

inline int read()

while(isdigit(ch))

return v * c;

}int main()

} for(int i = l;i <= r;++i) ans += f[cnt][i];

printf("%.4lf\n",ans);

} return 0;

}

這道題目沒有犯sb錯誤

我們想一下

設\(f_\)表示已經發現\(i\)種漏洞已經在\(j\)個系統發現了漏洞達到\(f_\)的期望天數

借用這位大佬的圖

那麼結合上面的圖

之後我們設

我們將上式化開

將\((1 - p_4)\)除到右邊就好了

#include#include#include#define p1 (1.0 * (n - i) * (s - j) / (n * s))

#define p2 (1.0 * (n - i) * j / (n * s))

#define p3 (1.0 * i * (s - j) / (n * s))

#define p4 (1.0 * i * j / (n * s))

using namespace std;

const int n = 1e3 + 3;

double f[n][n];

int main()

printf("%.4lf\n",f[0][0]);

return 0;

}

一道非常好的概率期望dp

我們設擲出和\(s\)的機率為\(p_s\)(特別的,將\(a,b,c\)那一組設為\(p_0\)),\(f_i\)為獲得i分數的期望次數

很明顯的轉移方程(倒推)

之後我們發現了乙個非常噁心的事情。就是每次轉移都和\(f_0\)有關,而\(f_0\)是我們求得最終答案

我們試著化簡一下,因為每個\(f\)的式子都與\(f_0\)有關我們設

那麼有我們將上式帶回原式子

試著整理一下

又因為我們就可以得到

又因為所以

我們得到了\(a\)與\(b\)的逆推式子,又知道\(f_0\)與\(a_0\),\(b_0\)的關係,就好做

#include#include#include#includeusing namespace std;

const int n = 1005;

double f[n];

double x[n],y[n],p[n];

int k1,k2,k3,a,b,c,n;

int main()

printf("%.15lf\n",y[0] / (1 - x[0]));

} return 0;

}

學習筆記 概率期望

省流 期望 概率 times 權值 好,開始看題。前置知識 alpha 1 2 alpha 2 2 times alpha 1 alpha 1 3 alpha 3 3 times alpha 2 3 times alpha 1 題目要求長度 n 的 0 1 串中 1 串長度的立方期望,考慮分步驟求解...

概率與期望 學習筆記

1.條件概率 定義 b 條件下 a 事件發生的概率為 p a b 有 p a b frac 全概率公式 定義 b 是 omega 的乙個劃分 則有 p a sum p b 貝葉斯公式 p a b frac 2.期望的線性性 e x y e x e y e cx ce x e xy e x e y 隨...

期望概率做題筆記

對於求 p i 可以參照第二種情況的思考方式,所以 p i sum 考慮到複雜度可能比較大,需要預處理一下 1 p i 的冪。x cf16e fish 概率狀壓dp 還是第一次見 看到 n le 18 考慮狀壓。設 f s 表示狀態 s 出現的概率,那麼可以列舉乙隻在狀態 s 中活著的魚 i 再列舉...