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; } }