classSolution{public:intminimizeSum(vector<int>&nums){ranges::sort(nums);// Can always change the number to any other number in `nums`, so `low`// becomes 0. Thus, rephrase the problem as finding the minimum `high`.constintn=nums.size();constinthighOfChangingTwoMins=nums.back()-nums[2];constinthighOfChangingTwoMaxs=nums[n-3]-nums[0];constinthighOfChangingMinAndMax=nums[n-2]-nums[1];returnmin({highOfChangingTwoMins,highOfChangingTwoMaxs,highOfChangingMinAndMax});}};
1 2 3 4 5 6 7 8 910111213
classSolution{publicintminimizeSum(int[]nums){Arrays.sort(nums);// Can always change the number to any other number in `nums`, so `low` becomes 0.// Thus, rephrase the problem as finding the minimum `high`.finalintn=nums.length;finalinthighOfChangingTwoMins=nums[n-1]-nums[2];finalinthighOfChangingTwoMaxs=nums[n-3]-nums[0];finalinthighOfChangingMinAndMax=nums[n-2]-nums[1];returnMath.min(Math.min(highOfChangingTwoMins,highOfChangingTwoMaxs),highOfChangingMinAndMax);}}
1 2 3 4 5 6 7 8 910
classSolution:defminimizeSum(self,nums:list[int])->int:nums.sort()# Can always change the number to any other number in `nums`, so `low` becomes 0.# Thus, rephrase the problem as finding the minimum `high`.highOfChangingTwoMins=nums[-1]-nums[2]highOfChangingTwoMaxs=nums[-3]-nums[0]highOfChangingMinAndMax=nums[-2]-nums[1]returnmin(highOfChangingTwoMins,highOfChangingTwoMaxs,highOfChangingMinAndMax)