因為會有人被彈出佇列,所以我設定的期望dp為
於是有當只剩乙個人的時候,那個人必勝,
再往下,先看它在隊首的情況,
其他的情況呢,也就是不在隊首的時候呢,
於是,連立這兩個方程組,可以得到
所以,就可以利用乙個pow來處理double型來解決這個問題了。
#include #include #include #include #include #include #include #include #include #include #include #include #include //#include //#include #define lowbit(x) ( x&(-x) )
#define pi 3.141592653589793
#define e 2.718281828459045
#define inf 0x3f3f3f3f
#define half (l + r)>>1
#define lsn rt<<1
#define rsn rt<<1|1
#define lson lsn, l, mid
#define rson rsn, mid+1, r
#define ql lson, ql, qr
#define qr rson, ql, qr
#define myself rt, l, r
using namespace std;
typedef unsigned long long ull;
typedef unsigned int uit;
typedef long long ll;
const int maxn = 1e3 + 7;
int n, m;
double dp[maxn][maxn];
signed main()
}printf("%.9lf\n", dp[n][m]);
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)
夏川的生日就要到了。作為夏川形式上的男朋友,季堂打算給夏川買一些生 日禮物。商店裡一共有種禮物。夏川每得到一種禮物,就會獲得相應喜悅值wi 每種禮物的喜悅值不能重複獲得 每次,店員會按照一定的概率pi 或者不拿出禮物 將第i種禮物拿出來。季堂每次都會將店員拿出來的禮物買下來。沒有拿出來視為什麼都沒有...