类别:数组 数组的改变、移动
题目:
法一:暴力
也可以count+=max-min 只可惜时间过不去哈哈哈哈...
代码:
class Solution {
public int minMoves(int[] nums) {
int i,j;
int count=0;
int flag,maxflag;
Arrays.sort(nums);
int max=nums[nums.length-1];
int min=nums[0];
while(min!=max){
count++;
flag=0;
maxflag=0;
for(i=0;i<nums.length;i++){
if(nums[i]<max){
nums[i]++;
}
else{
if(flag==0){
flag=1;
continue;
}
else{
nums[i]++;
maxflag=1;
}
}
}
min++;
if(maxflag==1)
max++;
}
return count;
}
}
法二:借助排序
代码:
class Solution {
public int minMoves(int[] nums) {
Arrays.sort(nums);
int j;
int count=0;
for(j=nums.length-1;j>0;j--){
count+=nums[j]-nums[0];
}
return count;
}
}