題目:小華去超市買香蕉,他要買好幾箱香蕉,但是她只能拿裝有相同數量香蕉的箱子。她有兩個選擇,1、可以扔掉乙個箱子中任意數量的香蕉。2、扔掉其他香蕉。問她怎麼樣能拿到最多數量的香蕉
8 7 11 29 14 這組香蕉中她能拿到最大的數量為29,因為假如把29減少到14,能拿兩箱14+14=28<29,所以最大為29
12 20 8 7 1 這組香蕉中她能拿到最大的數量為24,因為把20減少到12,12+12=24>20
8 8 9 23 4 這組能拿到最大為24,因為把9或者23減到8,這樣她能拿3箱8,3*8=24>23
因為只能取相同箱子,所以算出陣列中每個元素出現的數量,由於只有一次機會扔掉乙個箱子中的香蕉,也就是說,只有一次並且只能將大的數減少到你想要的那個數字,所以最大的那個數有幾個就只能拿幾箱,而其他的數都能拿它本身數量+1,so只要計算出所有數字乘他擁有數量+1(除了最大的數不+1),進行比較,最大的那個就是她能拿到的最大的香蕉數量。
方法
//搬香蕉問題
public
function
choicemax
($arr)
$arrcount[$max]
= $maxnum;
$arrcount =
array_values
($arrcount)
; $most = $this
->
takenum
($arrcount)
; $res =
"小華能拿到的最多的香蕉數量為"
.$most;
return $res;
}
2014哈爾濱小公尺筆試題
今年小公尺的筆試共三道大題,時間90分鐘 第一道 輸入乙個整數陣列,調整陣列中數字的順序,使得所有奇數字於所有偶數的前面,例如輸入的陣列為,調整後的陣列 是一種滿足條件的方案。函式的頭部已經寫好,無返回值,有兩個引數,乙個是陣列指標,另乙個是該陣列的長度。我的解答思路是使用兩個偽指標,乙個指向陣列的...
2014哈爾濱小公尺筆試題
今年小公尺的筆試共三道大題,時間90分鐘 第一道 輸入乙個整數陣列,調整陣列中數字的順序,使得所有奇數字於所有偶數的前面,例如輸入的陣列為,調整後的陣列 是一種滿足條件的方案。函式的頭部已經寫好,無返回值,有兩個引數,乙個是陣列指標,另乙個是該陣列的長度。我的解答思路是使用兩個偽指標,乙個指向陣列的...
小公尺筆試題 求異數
輸入2 16進製制內的數,返回其中值不相同的。輸入 輸入數值串行行 0輸入樣例 10 15 4 32 4 33 8 17 end輸出樣例 4 32 問題分析 將輸入解析。得出結果並輸出。初步程式如下 public static void main string args char arr str.t...