有一棟100層高的大樓,給你兩個完全相同的玻璃球,假設從某一層開始丟下玻璃球會摔碎,怎麼利用手中的兩個玻璃球,用什麼最優策略(最少次數)知道這個臨界的層是第幾層
動態規劃。
這個題目首先是關於「最優」的定義,考慮best-worse case最壞情況下最優。
記n層樓2球的問題為q(n,2),對應的最壞情況最優解為ba(n,2);
對於從第k層處拋球,對應的有如下兩種情況:
由於要考慮的是最壞的情況,所以上述兩種情況應該取次數多的那乙個。而為了找到最優解,就應該遍歷k,找到值最小的那乙個。所以,綜合起來,為了找到最壞情況最優解,則有如下狀態轉移方程。
ba(n, 2) = min} for k = 1
to n
實現細節:
#include
#include
#include
using
namespace
std;
class solution
//記錄最優拋球次數
dp[i] = curmin;
}//由於初始為0,所以n層在這裡應該返回n-1
int ans = dp[n - 1];
if (dp != null)
return ans;
}};int main(int argc, char
const *argv)
騰訊後台開發暑期實習生涼經
流程 面試官先讓你介紹一下自己,接著會對你簡歷寫的專案進行細節詢問,因為我讀研做的是目標檢測,所以大部分問的是相關問題,他會跟你 你做的一些工作,然後評估你做這個專案的難易度。很尷尬我做的東西是在深度學習開源平台做的相關工作,然後通過復現一些頂會 然後進行改進調引數等等,但是面試官想知道的是你對模型...
2023年武漢騰訊校園招聘一面經歷 後台開發
在8號筆試之後,終於在13號那天收到了明天邀請面試的簡訊,寫下這段文章,自己做筆記,也給其他人做一下參考 我是上午9點的面試,提前半小時到場,因為離學校很近,沒有花多少時間。到達面試地點,簽到之後就開始了第一次面試。面試官看起來不大,也非常和藹。在一段簡短的自我介紹過後便開始了正式的面試。個人覺得自...
2015騰訊實習生面試題後台開發崗
一面 大概11點10分左右來到璞喻酒店,屌絲表示從沒來過這麼高階的酒店,真是古香古色 亭台水榭。今天算是見了市面了。11點30左右,我來到面試房間,開始面試。面的問題很雜,但是基本沒有涉及到專案和演算法問題,主要是由於我的專案太渣。基本都是一些計算機方面的基本知識。c語言方面 虛函式,malloc和...