Task:
思路:
要满足条件:
(1)一对里面取最小;
(2)总体里面取最大;
所以(2)是首要考虑的,那么一对取最小就不能损失太多,那么怎么样的损失才不算太多呢?那就是连续的取最小才不会损失太多,所以其实就是排序后求奇数和!
代码:
class Solution {
public:
int arrayPairSum(vector<int>& nums) {
sort(nums.begin(), nums.end());
int sum = 0;
for( int i = 0 ; i < nums.size() ; i+=2){
sum += nums[i];
}
return sum;
}
};