Daily Practice 雞蛋掉落問題

2021-10-23 06:29:16 字數 1081 閱讀 6257

示例 1:

輸入:k = 1, n = 2

輸出:2

解釋:

雞蛋從 1 樓掉落。如果它碎了,我們肯定知道 f = 0 。

否則,雞蛋從 2 樓掉落。如果它碎了,我們肯定知道 f = 1 。

如果它沒碎,那麼我們肯定知道 f = 2 。

因此,在最壞的情況下我們需要移動 2 次以確定 f 是多少。

示例 2:

輸入:k =

2, n =

6輸出:3

示例 3:

輸入:k = 3, n = 14

輸出:4

1 <= k <= 100

1 <= n <= 10000

public int supereggdrop(int k, int n) 

// 初始化:填寫下標為 0、1 的行和下標為 0、1 的列

// 第 0 行:樓層為 0 的時候,不管雞蛋個數多少,都測試不出雞蛋的 f 值,故全為 0

for (int j = 0; j <= k; j++)

// 第 1 行:樓層為 1 的時候,0 個雞蛋的時候,扔 0 次,1 個以及 1 個雞蛋以上只需要扔 1 次

dp[1][0] = 0;

for (int j = 1; j <= k; j++)

// 第 0 列:雞蛋個數為 0 的時候,不管樓層為多少,也測試不出雞蛋的 f 值,故全為 0

// 第 1 列:雞蛋個數為 1 的時候,這是一種極端情況,要試出 f 值,最少次數就等於樓層高度,即我們從1樓往上開始扔,扔到碎為止。不能從頂樓往下扔,因為如果第乙個就碎了,無法確定這個樓層是否為所求樓層

for (int i = 0; i <= n; i++)

// 從第 2 行,第 2 列開始填表

for (int i = 2; i <= n; i++) }}

return dp[n][k];

}

拿雞蛋python 扔雞蛋問題python編寫

分析,假設x是最優解的最多次數。則第乙個雞蛋第一次從第x層扔 不管碎沒碎,還有x 1次嘗試機會 如果碎了,則第二個雞蛋在1 x 1層中線性搜尋,最多x 1次 如果沒碎,則第乙個雞蛋第二次從x x 1 層扔 現在還剩x 2次嘗試機會 如果這次碎了,則第二個雞蛋在x 1 x x 1 1層中線性搜尋,最多...

如何挑選好雞蛋?怎麼挑選新鮮雞蛋

看外觀 蛋殼上有沙點的雞蛋最好不要買,因為它的蛋殼薄,容易使細菌進入雞蛋內部。聽聲音 拿起雞蛋在耳邊搖晃,如果沒有聲音,就是較新鮮的雞蛋 有水晃蕩的聲音就是陳蛋。用水泡 雞蛋買回家,放得時間長了,可以將其放在水中檢測。倒一小鵬清水,將雞蛋放進水裡,如果雞蛋迅速沉底則說明是新鮮的蛋,漂浮在水面上的雞蛋...

LUCENE搜尋 雞蛋

query 這是乙個抽象類,他有多個實現,比如 termquery,booleanquery,prefixquery.這個類的目的是把使用者輸入的查詢字串封裝成 lucene 能夠識別的 query。term termquery termquery 是抽象類 query 的乙個子類,它同時也是 lu...