概率DP 期望雜題

2021-08-30 06:38:47 字數 1518 閱讀 1436

1.

​/*f[i][j]:前i個人,有j個人正常出局的概率

f[i][j]+=f[i-1][j]*p1+f[i-1][j-1]*p2;

留下來/被日死 正常出局

p 別人出局後自己被日死的概率

p2=(1-p)^(j-1);

p1=(1-p1)

f[i][k]*p2 前k個過後都沒有被日死

最後再*inv(1/n),這一輪出局概率 */

#include#define rep(i,a,b) for(ll i=(a);i<=(b);i++)

#define ll long long

using namespace std;

const ll mod=258280327;

const ll n=3e3;

ll f[n][n],a[n],b[n],n,x,y,p;

ll power(ll a,ll b)

int main()

int main()

return 0;

}

3.

/*有個人每天要去公司上班,每次會經過n條河,家和公司的距離為d,預設在陸地的速度為1,

給出n條河的資訊,包括起始座標p,寬度l,以及船的速度v。船會往返在河的兩岸,人到達

河岸時,船的位置是隨機的(往返中)。問說人達到公司所需要的期望時間。

因為船的位置是隨機的,那我們考慮最長過河時間和最短過河時間

最長:3*l/v;

最短:l/v;

由於算的是期望,那麼每條河的期望時間就是

sigma(i=1~3)i*l/v*p; p是概率

我們再觀察一下這個式子,這不就是算平均數嗎?

那麼過每條河的期望時間就等於2*l/v;

然後就可以愉快的計算了*/

#includeusing namespace std;

int n,d,p,l,v,case=0;

double ans=0;

int main()

ans=ans+1.0*d;

printf("case %d: %.3lf\n\n",++case,ans);

} return 0;

}

4.

/*甩乙個n面的骰子,問每一面都被甩到的期望次數是多少。

f[i]表示甩出了i~n面的期望次數

還是倒推吧

f[i]=(f[i]+1)*i/n+(f[i+1]+1)*(n-i)/n;

移項可得

f[i]=f[i+1]+n/(n-i);

就可以愉快的計算了*/

#include#define per(i,a,b) for(int i=(a);i>=(b);i--)

using namespace std;

double f[2000];

int n,t;

int main()

return 0;

}

學習筆記 期望DP題單 概率,期望DP

目錄貳 典例營 做過很多期望的題了,但是一直沒有系統地學習過期望,這幾天終於有時間攻堅這個重要但是對我而言難得一匹的問題了.實際上我 dp 也菜得一匹。傳送門 to oi wiki 一般我們使用 p x 表示 x 發生的概率,e x 表示 x 發生的期望。我們有兩者的關係 e x sum p x i...

概率期望dp入門題 遊戲

題目 alice 和 bob 兩個人正在玩乙個遊戲,遊戲有很多種任務,難度為 p 的任務 p是正整數 有 1 2 p 的概率完成並得到 2 p 1 分,如果完成不了,得 0 分。一開始每人都是 0 分,從 alice 開始輪流做任務,她可以選擇任意乙個任務來做 而 bob 只會做難度為 1 的任務。...

期望概率 dp

p4316 綠豆蛙的歸宿 p1850 noip2016 提高組 換教室 p3802 小魔女帕琪 p5104 紅包發紅包 p4550 收集郵票 f i frac f i 1 frac f 1 g i frac g i f i 1 frac g f 1 p1291 shoi2002 百事世界盃之旅 p3...