561.数组拆分I

思路:给定一个含有2n数组,两两配对取最小值,然后最小值之和最大。想要最小值之和最大,就得保证每一组得损失最小,即两个数之间得值最小。综上,排序数组,计数奇数位上的和即为所求

class Solution {
public:
    int arrayPairSum(vector<int>& nums) {
        int sum=0;
        sort(nums.begin(),nums.end());
        for (int i=0; i!=nums.size(); i+=2) {
            sum+=nums[i];
        }
        return sum;
    }
};

讨论区
[https://leetcode.com/problems/array-partition-i/discuss/]

posted @ 2018-09-10 12:01  Kipper  阅读(171)  评论(0)    收藏  举报