题目概述:
给定一个长度为2n的整数数组,把它分成n 对,比如(a1,b1),(a2,b2),...,(an,bn),使得每一对中较小的那个数的总和足够大,并求出总和。
思路:
先将数组按照降序排列,相邻的两个数分为一组,再计算总和。
示例:
Input: [1,4,3,2] Output: 4 Explanation: n is 2, and the maximum sum of pairs is 4.
代码:
class Solution { public: int arrayPairSum(vector<int>& nums) { int num=0; //vector排序(升序) sort(nums.begin(),nums.end()); //求和 for(int i=0;i<nums.size();i+=2) { num+=nums[i]; } return num; } };