Given an array of 2n integers, your task is to group these integers into n pairs of integer, say $(a_1, b_1), (a_2, b_2), \cdots, (a_n, b_n)$ which makes sum of $min(a_i, b_i)$ for all i from 1 to n as large as possible.java
Example 1:数组
Input: [1,4,3,2] Output: 4 Explanation: n is 2, and the maximum sum of pairs is 4 = min(1, 2) + min(3, 4).
Note:code
题目地址排序
这道题对我来讲难点在于看懂题,哈哈哈。题目的意思是2n个数,两两一组,求leetcode
$$ \sum_{i=0}^{n} min(a_i, b_i) $$get
咱们对数组排序,让小的两个组成一对,这样就能获得最大结果了。it
class Solution { public int arrayPairSum(int[] nums) { Arrays.sort(nums); int result=0; for(int i=0;i<nums.length;i+=2){ result+=nums[i]; } return result; } }