题目来源:
leetcode题目,网址:2335. 装满杯子需要的最短总时长 - 力扣(LeetCode)
解题思路:
若有两个即以上的杯子仍需加水,则网需求量最大的杯子和需求量次大的杯子加 1s 水;否则往单个杯子中加 1s 水。计时即可。
解题代码:
class Solution {
public int fillCups(int[] amount) {
int res=0;
int n=amount.length;
Arrays.sort(amount);
while(amount[n-1]!=0){
if(amount[n-2]==0){
res+=amount[n-1];
break;
}
amount[n-2]--;
amount[n-1]--;
res++;
Arrays.sort(amount);
}
return res;
}
}
总结:
官方题解用了数学的方法解题,贪心+分类讨论。
dispense 分发
dispenser 饮水机