

关键:
让n-1个元素加1,就相当于选一个元素-1;
选n-1个元素加1,加到所有元素相等,就相当于选1个元素减1,减到所有的元素都等于最小元素。
class Solution {
public:
int minMoves(vector<int>& nums) {
//得到nums中的最小元素
int min_val=INT_MAX;
for(auto num:nums)
{
min_val=min(min_val,num);
}
//计算需要操作的次数
int ret=0;
for(auto num:nums)
{
ret+=num-min_val;
}
return ret;
}
};
本文介绍了一种算法解决方案,通过最少的操作次数,让数组中的n-1个元素加1或减1,使得所有元素达到相等。关键在于理解如何通过选择加1和减1操作来平衡元素,最终实现目标。
5万+

被折叠的 条评论
为什么被折叠?



