摔手機
摔手機 動態規劃 在藍橋杯的時候遇到一次 當時沒有做對 看了題解也沒明白 如今再次遇到這個類似的題目
於是拿出來補補吧
摔手機題目如下:
星球的居民脾氣不太好,但好在他們生氣的時候唯一的異常舉動是:摔手機。
各大廠商也就紛紛推出各種耐摔型手機。x星球的質監局規定了手機必須經過耐摔測試,並且評定出乙個耐摔指數來,之後才允許上市流通。
x星球有很多高聳入雲的高塔,剛好可以用來做耐摔測試。塔的每一層高度都是一樣的,與地球上稍有不同的是,他們的第一層不是地面,而是相當於我們的2樓。
如果手機從第7層扔下去沒摔壞,但第8層摔壞了,則手機耐摔指數=7。
特別地,如果手機從第1層扔下去就壞了,則耐摔指數=0。
如果到了塔的最高層第n層扔沒摔壞,則耐摔指數=n
為了減少測試次數,從每個廠家抽樣3部手機參加測試。
某次測試的塔高為1000層,如果我們總是採用最佳策略,在最壞的運氣下最多需要測試多少次才能確定手機的耐摔指數呢?
請填寫這個最多測試次數。
之前做題目時比較天真 覺得 二分 摔手機最優啦 ╮( ̄▽ ̄")╭ ╮( ̄▽ ̄")╭ 菜雞的天真
對於這個題目 我們也可以設計乙個狀態 dp[i][j] i代表手機的數目 j代表層數 dp[i][j]為i個手機j層最佳的策略 最糟糕的次數
下面就是要去求 dp[i][j]是多少啦
假如這裡有j層 那麼我們可以選擇一層 第k層 把手機摔下去 當然 0for(int i=1;i<1001;i++)dp[1][i]=i;
for(int i=1;i<51;i++)dp[i][0]=0;
for(int i=1;i<51;i++)dp[i][1]=1;
for(int j=2;j<51;j++)
for(int i=1;i<1001;i++)
下面要幾個手機幾層樓 至少需要次數多少次 就好像乙個表一樣 直接查詢就可以了
2023年第九屆藍橋杯 C 省賽B組 全區變暖
題目 你有一張某海域nxn畫素的 表示海洋 表示陸地,如下所示 其中 上下左右 四個方向上連在一起的一片陸地組成一座島嶼。例如上圖就有2座島嶼。由於全球變暖導致了海面上公升,科學家 未來幾十年,島嶼邊緣乙個畫素的範圍會被海水淹沒。具體來說如果一塊陸地畫素與海洋相鄰 上下左右四個相鄰畫素中有海洋 它就...
2023年第九屆藍橋杯C 省賽B組H題
小明維護著乙個程式設計師論壇。現在他收集了乙份 點讚 日誌,日誌共有n行。其中每一行的格式是 ts id 表示在ts時刻編號id的帖子收到乙個 贊 現在小明想統計有哪些帖子曾經是 熱帖 如果乙個帖子曾在任意乙個長度為d的時間段內收到不少於k個讚,小明就認為這個帖子曾是 熱帖 具體來說,如果存在某個時...
第九屆藍橋杯B組決賽題解第四題 調手錶
調手錶 小明買了塊高階大氣上檔次的電子手錶,他正準備調時間呢。在 m78 星雲,時間的計量單位和地球上不同,m78 星雲的乙個小時有 n 分鐘。大家都知道,手錶只有乙個按鈕可以把當前的數加一。在調分鐘的時候,如果當前顯示的數是 0 那麼按一下按鈕就會變成 1,再按一次變成 2 如果當前的數是 n 1...