DP Luogu2719 搞笑世界盃

2021-08-14 06:20:01 字數 1115 閱讀 4038

隨著世界盃小組賽的結束,法國,阿根廷等世界強隊都紛紛被淘汰,讓人心痛不已. 於是有人組織了一場搞笑世界盃,將這些被淘汰的強隊重新組織起來和世界盃一同比賽.你和你的朋友欣然去購買球票.不過搞笑世界盃的球票**方式也很特別,它們只準備了兩種球票.a 類票------免費球票 b 類票-------雙倍價錢球票.購買時由工作人員通過擲硬幣決定,投到正面,的買a類票, 反面的買b類票.並且由於是市場經濟,主辦方不可能倒貼錢,所以他們總是準備了同樣多的a類票和b類票.你和你的朋友十分幸運的排到了某場精彩比賽的最後兩個位置.

這時工作人員開始通過硬幣售票.不過更為幸運的是當工作人員到你們面前時他發現已無需再擲硬幣了,因為剩下的這兩張票全是免費票。

你和你的朋友在欣喜之餘,想計算一下排在隊尾的兩個人同時拿到一種票的概率是多少(包括同時拿a 類票或b類票) 假設工作人員準備了2n 張球票,其中n 張a類票,n 張b類票,並且排在隊伍中的人每人必須且只能買一張球票(不管擲到的是該買a 還是該買b).

輸入格式:

輸入檔案僅一行,包含球票數2n . 其中,0輸出格式:

輸出檔案只包含乙個數,為拿到同一種票的概率,精確到小數點後4 位。

輸入樣例#1:

256

輸出樣例#1:

0.9500

【解法】

用f[i][j]表示有i個a票,j個b票時最後兩個人拿到同種票的概率

動態轉移方程 : f[i][j] = (f[i-1][j] + f[i][j-1]) * 0.5;

邊界:都是a或都是b,最後兩個是同票的概率為1 即f[i][0] = f[0][i] = 1

#include #include using namespace std;

int n;

double f[1250][1250];

int main()

P2719 搞笑世界盃

p2719 搞笑世界盃 我覺得這個難度是假的,如果不知道這個是dp我就做不出來,好吧,知道我也沒做出來。f i j 表示剩i張a票,j張b票時,最後兩張票相同的概率。當前的隊首有一半的概率選a,一半的概率選b,so f i j 0.5 f i 1 j 0.5 f i j 1 答案為f n n 1 i...

題解 P2719 搞笑世界盃

其實懂了之後很簡單,但是剛開始真的很難想.d a b 表示剩a張a類票和b張b類票時,最後兩張票相同的概率 那麼此時的排隊的第乙個人只有兩種選擇 拿a類票或者b類票 拋硬幣得到的可能性當然是二分之一,所以說d i 1 j 當前第一人拿了a類票 和d i j 1 當前第一人拿了b類票 各佔二分之一 這...

P2719 搞笑世界盃 dp 思維

傳送門 題意 給出n張票,讓求最後兩個人買到相同票的概率,題目中a和b買票的概率是相同的,在一開始,用i,j分別表示剩餘的票數。dp i j 為當前的概率。狀態轉移方程為 dp i j 0.5 dp i 1 j dp i j 1 dp i 1 j 表示此時隊首選了a,dp i j 1 表示此時隊首選...