题目
挺有意思的一道题。因为移动两部的话没有任何消耗。当两点之间的距离是偶数的时候就没有任何消耗,当两点的距离为奇数时有一个消耗。奇数和奇数之间的距离是偶数,偶数和偶数的距离也是偶数,所以只需要考虑奇数和偶数之间的距离。也就变成了把所有的数挪到一个奇数的位置(偶数挪到这个位置每个消耗都是1,奇数无消耗)?还是把所有的数都挪到一个偶数的位置。
class Solution {
public int minCostToMoveChips(int[] chips) {
int odd = 0,even = 0;
for(int a:chips){
if(a%2==0){
even++;
}else{
odd++;
}
}
return odd<even?odd:even;
}
}
一阵清风梦绿萝,人生随处是南柯。