動態規劃--100層樓2只雞蛋最少次可以測試最高樓層不摔破
100層樓2個雞蛋
原題目:100層樓2個雞蛋最少需要幾次測試,才能得到摔破雞蛋的樓層;
轉換題目:兩個雞蛋,進行k次測試,最多可以測試多少層?
分析:第1個雞蛋測試所在的樓層高度為k層。
①如果第1個雞蛋在第k層摔破了,第二個雞蛋就可以從第1層開始慢慢測試,最多k次可以測試到準確樓層;
②如果第1個雞蛋在k層沒有摔破,這個時候就只剩下k-1次機會了,第2次測試的時候第1個雞蛋就可以在第k+(k-1)層測試。如果第2次第1個雞蛋摔破了,第2個雞蛋就可以從k層開始慢慢的往k+(k-1)層測試,如果沒有摔破,就繼續同樣的往更高層測試,第三次的話就應該是k+(k-1)+(k-2)層測試了,這樣就可以確保剩下的機會可以準確測試到摔破的樓層。
③所以公式是:k+(k-1)+(k-2)+…+1>=100;轉化一下就是:k(k+1)/2>=100;求解k>=14;所以100層樓最少14次可以測試到準確摔破樓層;
同樣的道理:
如果是N層樓2個雞蛋呢?
公式是k(k+1)/2>=N
如果是N層樓3個雞蛋呢?
考慮到第1個雞蛋第1次就摔破的可能性,第一次的樓層需要恰到好處。先前k-1次機會能將剩餘樓層測試完,那就是最多可以測試k(k-1)/2層樓,所以第一次在k(k-1)/2+1層樓;如果第1次第1個雞蛋不碎,第2次在此基礎上增加(k-1)(k-2)/2+1層樓,於是,3個雞蛋k次測試機會總共測試樓層數為:[k(k-1)/2+1]+[(k-1)(k-2)/2+1]+…+[2*1/2+1]+[1*0/2+1]={[k^2+(k-1)^2+…+1]-[k+(k-1)+(k-2)+…+1}/2+k=(k^3+5k)/6,k=9。
如果是N層雞蛋n個雞蛋呢,以此類推。
相關推薦
動態規劃--100層樓2只雞蛋最少次可以測試最高樓層不摔破
100層樓2個雞蛋 原題目:100層樓2個雞蛋最少需要幾次測試,才能得到摔破雞蛋的樓層; 轉換題目:兩個雞蛋,進行k次測試,最多可以測試多少層? 分析:第1個雞蛋測試所在的樓層高度為k層。 ①如
100層樓有一個雞蛋,如果確定剛好摔碎的那個樓層,最壞情況下最少需要摔多少次?
分析:這道題我們應反過來考慮,就是用a塊石頭扔b次至多一定可分辨層數X(a,b)。先從最簡裝的一塊石頭考慮,很顯然,X(1,1) = 1X(1,2) = 2X(1,3) = 3.X(1,i) = i再考慮二塊石頭,顯而易見X(2,1) = 1對於X(2,2),我們可這樣考慮,當我們扔第一次後,有兩種可能:破和
2個雞蛋100層樓--動態規劃
原題:兩個軟硬程度一樣但未知的雞蛋,它們有可能都在一樓就摔碎,也可能從一百層樓摔下來沒事。有座100層的建築,要你用這兩個雞蛋確定哪一層是雞蛋可以安全落下的最高位置。可以摔碎兩個雞蛋。在最壞的情況下最少需要幾次測試,才能得到摔碎雞蛋的樓層? 這個題目的解答網上的答案有很多,本文就不細述了,
面試題目:2個雞蛋100層樓問題
clas family 如果 規劃 數字 span time 試題 一次 題目: 兩個軟硬程度一樣但未知的雞蛋,它們有可能都在一樓就摔碎,也可能從一百層樓摔下來沒事。有座100層的建築,要你用這兩個雞蛋確定哪一層是雞蛋可以安全落下的最高位置。可以摔碎兩個雞蛋。
100層樓,2個雞蛋問題
題目描述: 一道非常經典的面試題目,給你兩個雞蛋,在一幢100層的大樓裡面,至少扔幾次可以測出讓雞蛋破碎的臨界高度? 兩個軟硬程度一樣但未知的雞蛋,它們有可能都在一樓就摔碎,也可能從一百層樓摔下來沒事。 有座100層的建築,要你用這兩個雞蛋確定哪一層是雞蛋可以安全落下的最高位置。可以
100層樓扔雞蛋,最快速度找出,哪層是雞蛋碎的臨界點
x*(x+1)/2=100層樓,x為最優解 第二天 題目:扔雞蛋問題 有2個雞蛋,從100層樓上往下扔,以此來測試雞蛋的硬度。比如雞蛋在第9層沒有摔碎,在第10層摔碎了,那麼雞蛋不會摔碎的
[百度面試題]100層樓,球可能會在某一層樓摔壞,問用2個球,最壞情況下幾次測試可以找出該樓層
該題還可以擴充套件,比如說給更多的球,如3個球,多少次測試可以找出樓層。 分析如下: 用動態規劃解這個問題 設f(a, b)為a個球做b次測試可以測試到的樓層數,可以確定的樓層數即為f(a, b) + 1,因為第1層不需測試,需要測試的樓層號僅僅為[2, f(a, b) +
標題:測試次數(100層樓扔雞蛋)
標題:測試次數 x星球的居民脾氣不太好,但好在他們生氣的時候唯一的異常舉動是:摔手機。 各大廠商也就紛紛推出各種耐摔型手機。x星球的質監局規定了手機必須經過耐摔測試,並且評定出一個耐摔指數來,之後才允許上市流通。 x星球有很多高聳入雲的高塔,剛好可以用來做耐摔測試。塔的
[面試題]100層樓丟玻璃球,一旦超過某層就會破,你只有兩個球。
題目: 有一棟100層高的大樓,給你兩個完全相同的玻璃球。假設從某一層開始,丟下玻璃球會摔碎。那麼怎麼利用手中的兩個球,用什麼最優策略知道這個臨界的層是第幾層?? 思路:最簡單的,扔一個到51層 ,碎了,再試後面50層 ,沒碎再試前面50層,總共50次。時間複雜
[百度面試題]100層樓丟玻璃球問題
轉自 : http://blog.csdn.net/prstaxy/article/details/8655988 有一棟100層高的大樓,給你兩個完全相同的玻璃球。假設從某一層開始,丟下玻璃球會摔碎。那麼怎麼利用手中的兩個球,用什麼最優策略知道這個臨界的層是第幾層??
南陽理工學院動態規劃專題 括號問題2 總結
南陽理工學院動態規劃專題括號問題2總結 這道題目初看起來很簡單,但是我從看題到思考,到做題ac足足花了一個晚上加一個下午的時間,我也有到網上找程式碼的習慣,但是都是遞迴,特別蛋疼,我想用正統的動歸去做,於是就開始了不一樣的艱難探索之旅。 分析過程: 使用char str[1
leetcode【陣列】 2 只出現一次的數字 -python3
給定一個非空整數陣列,除了某個元素只出現一次以外,其餘每個元素均出現兩次。找出那個只出現了一次的元素。 說明: 你的演算法應該具有線性時間複雜度。 你可以不使用額外空間來實現嗎? 示例 1: 輸入: [2,2,1] 輸出: 1 示例 2: 輸入: [4,1,2,
你拿著兩個雞蛋站在 100 層的大樓上。雞蛋或許結實到從樓頂掉下也不會摔破。或許很易碎,在一樓摔下就破碎。
雞蛋 可能 結果 最大 第一個 bsp 我們 需要 無法 你拿著兩個雞蛋站在 100 層的大樓上。雞蛋或許結實到從樓頂掉下也不會摔破。或許很易碎,在一樓摔下就破碎。請問最少試驗多少次可以確保找出雞蛋不會被摔碎的最高樓層? 註意:1、只有兩個蛋2、確保找出 一開始,
兩個軟硬程度一樣的雞蛋,它們在某一層摔下會碎,有個100層的建築,要求最多用兩個雞蛋確 定雞蛋安全下落的臨界位置,給出臨界位置?如果是n層樓,m個雞蛋,請給出確定臨界位置的演算法
題目:問題:一幢大樓共計100層,某種型別的雞蛋從某一樓層及其以上樓層摔下來時會被打破,從該層樓(即臨界樓層)以下樓層摔下該雞蛋,雞蛋不會出現破損。現給你2個完全一樣的該種類型的雞蛋,問:如何通過這2個雞蛋找到該臨界樓層時,所用的摔雞蛋次數最少? 思考:給了我們2個雞
N個雞蛋從M樓層摔(2個雞蛋從100層摔)
一、題目: 有一棟樓共100層,一個雞蛋從第N層及以上的樓層落下來會摔破, 在第N層以下的樓層落下不會摔破。給你2個雞蛋,設計方案找出N,並且保證在最壞情況下, 最小化雞蛋下落的次數。 二、思路
【動態規劃】 Codeforces Round #416 (Div. 2) C. Vladik and Memorable Trip
and main spa def esp 動態 return 價值 can 劃分那個序列,沒必要完全覆蓋原序列。對於劃分出來的每個序列,對於某個值v,要麽全都在該序列,要麽全都不在該序列。 一個序列的價值是所有不同的值的異或和。整個的價值是所有劃分出來的序列的價值之和。
【動態規劃】Codeforces Round #406 (Div. 2) C.Berzerk
[1] space node sca 一個 for 隊列 ber 動態規劃 有向圖博弈問題。 能轉移到一個必敗態的就是必勝態。 能轉移到的全是必勝態的就是必敗態。 轉移的時候可以用隊列維護。 可以看這個 http://www.cnblogs.com/quintessence
超多經典 canvas 實例,動態離子背景、移動炫彩小球、貪吃蛇、坦克大戰、是男人就下100層、心形文字等等等
ntb contex lin 如果 maxwidth sel 容器 操作 reat 超多經典 canvas 實例 普及:<canvas> 元素用於在網頁上繪制圖形。這是一個圖形容器,您可以控制其每一像素,必須使用腳本來繪制圖形。 註意:IE 8 以及更早的版本不
爬樓問題—遞歸、動態規劃
不同 cnblogs 正在 動態 clas div pan urn 每次 問題:假設你正在爬樓梯,需要n步你才能到達頂部。但每次你只能爬一步或者兩步,你能有多少種不同的方法爬到樓頂部? code: 1 //動態規劃解決爬樓問題 2 int dp_climbStairs
【Luogu】【關卡2-15】動態規劃的背包問題(2017年10月)
splay image 說明 方案 理解 ostream img 如果 一次 任務說明:這是最基礎的動態規劃。不過如果是第一次接觸會有些難以理解。加油闖過這個坎。 P1060 開心的金明 小明的媽媽給小明N元錢,小明想買m件物品,每個物品價值為 價格*重要度,求出不超過N元