题目要求:给定长度为 2n 的数组, 你的任务是将这些数分成 n 对, 例如 (a1, b1), (a2, b2), ..., (an, bn) ,使得从1 到 n 的 min(ai, bi) 总和最大。 思路:由题意可知,所求数应为a1+a2+...an总和最大.比较简便的做法就是,先将数组排序,计算奇数项之和。 class Solution { public int arrayPairSum(int[] nums) { Arrays.sort(nums); int sum=0; for(int i=0;i<nums.length;i=i+2) { sum=sum+nums[i]; } return sum; } }
数组拆分 I(初学者,初实践)
最新推荐文章于 2023-12-06 23:55:36 发布