禮物(概率dp)

2022-02-02 00:56:51 字數 968 閱讀 5068

夏川的生日就要到了。作為夏川形式上的男朋友,季堂打算給夏川買一些生 日禮物。

商店裡一共有種禮物。夏川每得到一種禮物,就會獲得相應喜悅值wi(每種禮物的喜悅值不能重複獲得)。

每次,店員會按照一定的概率pi(或者不拿出禮物),將第i種禮物拿出來。 季堂每次都會將店員拿出來的禮物買下來。沒有拿出來視為什麼都沒有買到,也算一次購買。

眾所周知,白毛切開都是黑的。所以季堂希望最後夏川的喜悅值盡可能地高。

求夏川最後最大的喜悅值是多少,並求出使夏川得到這個喜悅值,季堂的期望購買次數。

第一行,乙個整數n,表示有n種禮物。

接下來n行,每行乙個實數pi和正整數wi,表示第i種禮物被拿出來的概率和 可以獲得喜悅值。

第一行,乙個整數表示可以獲得的最大喜悅值。

第二行,乙個實數表示獲得這個喜悅值的期望購買次數,保留3位小數。

對於10%的資料,n = 1

對於30%的資料,n ≤ 5

對於100%的資料,n ≤ 20,0 < wi ≤ 10^9 ,0 < pi ≤ 1且∑pi ≤ 1

注意:本題不設spj

#includeusing namespace std;

typedef long long ll;

const int maxn = 25;

const int max = 1 << 20;

double p[maxn];

double f[max];

int w[maxn];

ll sum;

int main()

int s = (1 << n) - 2;

for(int i = s;i >= 0;--i)

f[i] = (sum + 1) * 1.0 / sump;//剛才推導的式子

} printf("%lld\n%.3lf\n",sum,f[0]);

return 0;

}

概率DP初步

題目簡述 乙個r行c列的格仔,起始點在 1,1 終點在 r,c 每一步可能的走法有 不動 向右走 向下走,每走一步花費兩點魔法值,現給出在每一點三種走法的概率,求走完迷宮時所花魔法值的期望。分析 運用dp演算法的話,首先需要確定乙個合適狀態來描述子問題的情況,很明顯本題的狀態可以定義為dp i j ...

概率dp入門

概率dp主要用於求解期望 概率等題目。轉移方程有時候比較靈活。一般求概率是正推,求期望是逆推。通過題目可以體會到這點。poj2096 collecting bugs include include include include include typedef long long ll using ...

骰子 概率dp

因為會有人被彈出佇列,所以我設定的期望dp為 於是有當只剩乙個人的時候,那個人必勝,再往下,先看它在隊首的情況,其他的情況呢,也就是不在隊首的時候呢,於是,連立這兩個方程組,可以得到 所以,就可以利用乙個pow來處理double型來解決這個問題了。include include include in...