- 相關推薦
華碩筆試智力題
顯然,為了避免成為受害者,對第n個人(n>=3)而言,他的最佳策略就是取前面所有人取的豆數的平均值。
先來看看n=3,即第3個人的情況。在他之前,1號和2號已經摸過了,分別記為A和B,以
下用邏輯表達式的形式來描述3號所取的豆數C。
C = (A + B) / 2 //3號的初始策略,取前兩個人的平均值
if (A + B + C) > 100 //1號和2號加起來取走了超過67個
{
C = 100 - (A + B + 1 + 1)
if C == 1
return 0 //1號和2號共取走了97個,3、4、5號認命
else
return 1 //3號安全。C必定小于A、B中的一個,并且必定大于D、E
}
else
{
if A<> B
{
if C == int(C) //整除
{
return 1 //3號安全。C必定位于A、B二者之間
}
else
{
C = int(C)
if abs(A - B) == 1 //1號、2號所取的數只相差1個
return 2 //此時C = min(A,B),因此肯定已經不可能是最多的。后面的4號、5號理論
上還有可能犯錯誤,3號還存在一線存活的機會
else
return 1 //3號安全。C必定位于A、B二者之間
}
}
else
{
return 2 //此時C =A = B。后面的4號、5號理論上還有可能犯錯誤,3號還存在一線存
活的機會
}
}
上面這段程序完全可以擴展到n>3的情況,最后我們會發現雖然理論上3號比較有利,實
際上1號根本不會給后面的人設計他的機會。所以唯一合理的結果應該是A = B = C = D
= E = 20,也就是全都死翹翹。
當然,以上推理有一個重要的假定,即“很聰明”的定義如下:
“如果無論如何我都會出局,則多一個墊背的比少一個好。”
【華碩筆試智力題】相關文章:
華碩筆試歸來11-21
華碩筆試題02-18
外國名企面試筆試智力題大搜羅02-18
微創智力題02-18
500強面試智力題11-19
Oracle筆試,分享筆試內容11-21
筆試經驗:筆試內容準備11-21
[筆試]521KPMG筆試11-19
現場筆試與在線筆試的問題11-21
在華碩的面試經歷,面試問題分享11-20