【题目】
桌上有 n
堆力扣币,每堆的数量保存在数组 coins
中。我们每次可以选择任意一堆,拿走其中的一枚或者两枚,求拿完所有力扣币的最少次数。
【解析】
每次取的力扣币数是 1 或者 2 ,每次只能在一堆中选取。
所以本题重点是判断每堆的力扣币数是偶数还是奇数。
偶数则用数量/2;奇数则用数量/2+1。
【代码】
class Solution {
public int minCount(int[] coins) {
int count = 0 ;
for(int i=0; i<coins.length; i++){
if(coins[i]%2 == 1){
count = count + coins[i]/2 +1;
}else{
count = count + coins[i]/2 ;
}
}
return count;
}
}