3675 唐納德先生與假骰子

2021-10-04 10:50:44 字數 928 閱讀 8518

單點時限: 6.0 sec

記憶體限制: 1024 mb

嗨,唐納德先生又來了。

他又帶了一枚假骰子,這個骰子的各個面的點數依然是 1,2,3,4,5,6,但是六個面向上的概率卻不一定都是 1/6,而變成了 p1,p2,p3,p4,p5,p6。

現在它要跟你玩乙個遊戲。首先你也得準備一枚骰子,各個面的點數同樣是 1,2,3,4,5,6,但是六個面向上的的概率分別是 q1,q2,q3,q4,q5,q6。現在,你們同時擲手中的骰子。當你們的骰子向上的點數相同,且為 k (1≤k≤6) 時,你將收穫 k 分。否則,你將收穫 0 分。

現在你要選擇一枚最優的骰子,使得你得分的期望最大。

輸入格式

第一行乙個整數 t (1≤t≤105) 表示資料組數。

對於每組資料,輸入一行六個整數 a1,a2,a3,a4,a5,a6 (0≤ai≤109, ∑ai>0)。pi=ai/(∑6i=1ai)。

輸出格式

輸出得分期望的最大值,相對誤差或絕對誤差不超過 10−9。

樣例input

31 1 1 1 1 1

10 0 0 0 0 0

1 2 3 4 5 6

output

1.000000000000

1.000000000000

1.714285714286

提示第一組樣例中,六個面向上的概率都是 1/6。

/*

最大概率為:max(ai*i)/sum

*/#include

#include

using

namespace std;

intmain()

printf

("%.9lf\n"

,double

(m)/sum);}

return0;

}

唐納德先生與這真的是簽到題嗎(數學)

原題 題意 有乙個n長陣列,兩兩相加得到乙個n n 1 2的陣列,給出這個n n 1 2的陣列 排序後 求出原陣列 任意解 解析 假設原陣列從小到大為a1,a2,a 3.an a 1,a 2,a 3.a n a1 a2 a3 an 它們的和中,最小的一定是a1 a2 a 1 a 2 a1 a2 其次...

EOJ 3452 唐納德先生和假骰子

題目描述 在進行某些桌遊,例如 uno 或者麻將的時候,常常會需要隨機決定從誰開始。骰子是一種好方案。普通的骰子有六個面,分別是一點 二點 三點 四點 五點 六點,六面向上的概率相同。由於骰子只能產生六種情況,而實際桌遊時,卻常常有三到四人,所以,我們在擲骰子時,常常採用兩顆骰子,這個 隨機的選擇 ...

EOJ 3452 唐納德先生和假骰子 暴力

題目鏈結 題目意思 給你乙個數字p,代表人數,接著給出你兩個骰子的六個面的數值,現在要你將骰子向上的點數和對人數取餘,得到的餘數分別為0到p 1,現在問你遊戲是否公平。解題思路 數值很小我們就用暴力求出兩個骰子的六個面的點數和,然後對p取餘,看得到的餘數的個數是否一樣,一樣代表遊戲公平,否則遊戲不公...