時間限制: 1 sec 記憶體限制: 128 mb
提交: 396 解決: 80
[提交][狀態][討論版]
你們知道嗎?西電的跳樓塔上面有乙個鳥巢。某sxbk的教授對這個鳥巢很感興趣。經過仔細觀察,他發現鳥巢中有若干枚蛋。於是他想利用這些蛋做乙個試驗。測試一下蛋的堅固程度。這些蛋應該是具有相同的堅硬度。存在乙個非負整數e,如果從塔的第e層往下扔蛋,蛋不會破,但如果從第e+1層(包括高於e+1層)扔,蛋就會破。你要做一組試驗,來找出e。最簡單的方法是一層層試。但是你有多個蛋是,不必用笨方法,可以用更少的次數找出e。注意這裡的次數都是指對你的方法的最壞情況且蛋破了就不能再用,還有e可以取0(直接放在地上蛋蛋是不會破的)。如果實驗到了最高層蛋還不破,則認為e取最高層的層數。
一行,蛋的個數n和樓的層數n,k<=1000。(中間乙個空格)。
請一直處理到檔案結束。
最少實驗次數。
1 102 5
10對於第二個樣例,第一次把乙個蛋從三樓扔下去,如果破了就把另乙個蛋從一樓開始向上測試,如果沒破就從四樓開始向上測試,最壞情況下需要測試三次。3
[提交][狀態][討論版]
한국어
#include#include#include
#include
#include
using
namespace
std;
typedef
long
long
ll;const
int maxn =1000
;#define inf 0x3f3f3f3f
/*dp[i][j]表示從k層以上扔下去蛋會碎而且還有j個鳥蛋
dp[i][j] =
k屬於1-i
max(dp[k-1][j-1],dp[i-k][j])+1,dp[i][j]
*/int
dp[maxn][maxn];
intn ,k;
int dp(int k,int
j)
return
dp[k][j];
}int
main()
}
概率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...