插: 前些天發(fā)現(xiàn)了一個巨牛的人工智能學習網(wǎng)站,通俗易懂良哲,風趣幽默盛卡,忍不住分享一下給大家。點擊跳轉(zhuǎn)到網(wǎng)站筑凫。
堅持不懈滑沧,越努力越幸運,大家一起學習鴨~~~
3妹:2哥2哥巍实,出大事了滓技,你有沒有聽說,安倍晉三被刺殺身亡了蔫浆。
2哥:嗯殖属, 我也看到新聞了。
3妹:哎瓦盛, 政治上的事,世事難料啊外潜。
2哥:是的原环,這種事情我們也只能作為新聞聽一聽,也不是我們小平民可以關(guān)心的处窥。
3妹:我還是好好學習嘱吗,天天向上吧。 繼續(xù)美好的一天滔驾,先從做題開始谒麦。
題目:
現(xiàn)有一臺飲水機,可以制備冷水哆致、溫水和熱水绕德。每秒鐘,可以裝滿 2 杯 不同 類型的水或者 1 杯任意類型的水摊阀。
給你一個下標從 0 開始耻蛇、長度為 3 的整數(shù)數(shù)組 amount ,其中 amount[0]胞此、amount[1] 和 amount[2] 分別表示需要裝滿冷水臣咖、溫水和熱水的杯子數(shù)量。返回裝滿所有杯子所需的 最少 秒數(shù)漱牵。
示例 1:
輸入:amount = [1,4,2]
輸出:4
解釋:下面給出一種方案:
第 1 秒:裝滿一杯冷水和一杯溫水夺蛇。
第 2 秒:裝滿一杯溫水和一杯熱水。
第 3 秒:裝滿一杯溫水和一杯熱水酣胀。
第 4 秒:裝滿一杯溫水刁赦。
可以證明最少需要 4 秒才能裝滿所有杯子愿卸。
示例 2:
輸入:amount = [5,4,4]
輸出:7
解釋:下面給出一種方案:
第 1 秒:裝滿一杯冷水和一杯熱水。
第 2 秒:裝滿一杯冷水和一杯溫水截型。
第 3 秒:裝滿一杯冷水和一杯溫水趴荸。
第 4 秒:裝滿一杯溫水和一杯熱水。
第 5 秒:裝滿一杯冷水和一杯熱水宦焦。
第 6 秒:裝滿一杯冷水和一杯溫水发钝。
第 7 秒:裝滿一杯熱水。
示例 3:
輸入:amount = [5,0,0]
輸出:5
解釋:每秒裝滿一杯冷水波闹。
提示:
amount.length == 3
0 <= amount[i] <= 100
思路:
排序酝豪,每一秒都裝滿最多類型的兩個杯子。
java代碼:
class Solution {
public int fillCups(int[] amount) {
int count = 0;
while (amount[0]>0 || amount[1]>0 || amount[2]>0) {
Arrays.sort(amount);
amount[1]--;
amount[2]--;
count++;
}
return count;
}
}