x星球的居民脾氣不太好,但好在他們生氣的時候唯一的異常舉動是:摔手機。
各大廠商也就紛紛推出各種耐摔型手機。x星球的質監局規定了手機必須經過耐摔測試,並且評定出乙個耐摔指數來,之後才允許上市流通。
x星球有很多高聳入雲的高塔,剛好可以用來做耐摔測試。塔的每一層高度都是一樣的,與地球上稍有不同的是,他們的第一層不是地面,而是相當於我們的2樓。
如果手機從第7層扔下去沒摔壞,但第8層摔壞了,則手機耐摔指數=7。
特別地,如果手機從第1層扔下去就壞了,則耐摔指數=0。
如果到了塔的最高層第n層扔沒摔壞,則耐摔指數=n
為了減少測試次數,從每個廠家抽樣3部手機參加測試。
給你三個雞蛋,你能上m層樓,你想知道雞蛋的硬度。
雞蛋可能很硬或很脆弱,如果雞蛋從第n層掉下而沒破裂,而從第n+1層掉下就破裂了,那麼這個雞蛋的硬度就是n。
輸入測試樓層數
你需要找出在最壞情況下最少試驗次數。例:3
輸出:2
7輸出:
3100
輸出:9
1024
輸出:19
用步數推層數
推層數,算出當有一部手機的最優解,兩部手機的,三部手機。。。。。
當只有一部手機時n層樓就要摔n次
當有兩部手機時就可以拿一部手機摔定位,定位在(n-1)+1-->[也就是n]層摔一次,通過最壞情況(也就是手機沒摔壞),然後在n+n-1摔,n+n-1+n-2..得出結論是n的累加
第一次步數是在摔定位:不管手機在哪層摔
然後很容易推出:
既然有三部手機,那就可以先拿兩部手機摔出定位,定位在不管多少部手機,只需要增加累加即可
然後判斷(最大能摔的層數 < =需要測試的層數)取出所需步數就可以得出結果
#include int main()
printf("%d",i);
return 0;
}
第九屆藍橋杯 耐摔指數
問題描述 星球的居民脾氣不太好,但好在他們生氣的時候唯一的異常舉動是 摔手機。各大廠商也就紛紛推出各種耐摔型手機。x星球的質監局規定了手機必須經過耐摔測試,並且評定出乙個耐摔指數來,之後才允許上市流通。x星球有很多高聳入雲的高塔,剛好可以用來做耐摔測試。塔的每一層高度都是一樣的,與地球上稍有不同的是...
藍橋杯第九屆試題 耐摔指數
x星球的居民脾氣不太好,但好在他們生氣的時候唯一的異常舉動是 摔手機。各大廠商也就紛紛推出各種耐摔型手機。x星球的質監局規定了手機必須經過耐摔測試,並且評定出乙個耐摔指數來,之後才允許上市流通。x星球有很多高聳入雲的高塔,剛好可以用來做耐摔測試。塔的每一層高度都是一樣的,與地球上稍有不同的是,他們的...
藍橋杯摔手機測試次數
題目 x星球的居民脾氣不太好,但好在他們生氣的時候唯一的異常舉動是 摔手機。各大廠商也就紛紛推出各種耐摔型手機。x星球的質監局規定了手機必須經過耐摔測試,並且評定出乙個耐摔指數來,之後才允許上市流通。x星球有很多高聳入雲的高塔,剛好可以用來做耐摔測試。塔的每一層高度都是一樣的,與地球上稍有不同的是,...