1. 程式人生 > >第九屆藍橋杯省賽JAVA語言 C組題解_題10 耐摔指數

第九屆藍橋杯省賽JAVA語言 C組題解_題10 耐摔指數

JAVA語言 C組題解_題10 耐摔指數

題目

標題:耐摔指數

x星球的居民脾氣不太好,但好在他們生氣的時候唯一的異常舉動是:摔手機。
各大廠商也就紛紛推出各種耐摔型手機。x星球的質監局規定了手機必須經過耐摔測試,並且評定出一個耐摔指數來,之後才允許上市流通。

x星球有很多高聳入雲的高塔,剛好可以用來做耐摔測試。塔的每一層高度都是一樣的,與地球上稍有不同的是,他們的第一層不是地面,而是相當於我們的2樓。

如果手機從第7層扔下去沒摔壞,但第8層摔壞了,則手機耐摔指數=7。
特別地,如果手機從第1層扔下去就壞了,則耐摔指數=0。
如果到了塔的最高層第n層扔沒摔壞,則耐摔指數=n

為了減少測試次數,從每個廠家抽樣3部手機參加測試。

如果已知了測試塔的高度,並且採用最佳策略,在最壞的運氣下最多需要測試多少次才能確定手機的耐摔指數呢?

輸入資料,一個整數n(3<n<10000),表示測試塔的高度。
輸出一個整數,表示最多測試多少次。

例如:
輸入:
3

程式應該輸出:
2

解釋:
手機a從2樓扔下去,壞了,就把b手機從1樓扔;否則a手機繼續3層扔下

再例如:
輸入:
7

程式應該輸出:
3

解釋:
a手機從4層扔,壞了,則下面有3層,b,c 兩部手機2次足可以測出指數;
若是沒壞,手機充足,上面5,6,7 三層2次也容易測出。

資源約定:
峰值記憶體消耗(含虛擬機器) < 256M
CPU消耗 < 1000ms

請嚴格按要求輸出,不要畫蛇添足地列印類似:“請您輸入…” 的多餘內容。

所有程式碼放在同一個原始檔中,除錯通過後,拷貝提交該原始碼。
不要使用package語句。不要使用jdk1.7及以上版本的特性。
主類的名字必須是:Main,否則按無效程式碼處理。


笨笨有話說:
我覺得3個手機太難了,要是2個手機還可以考慮一下。

歪歪有話說:
想什麼呢,你!要是1部手機還用你程式設計啊?那樣的話只好從下往上一層一層測。

解題思路

1、挖坑待填