Array Partition I
Given an array of 2n integers, your task is to group these integers into n pairs of integer, say (a1, b1), (a2, b2), ..., (an, bn) which makes sum of min(ai, bi) for all i from 1 to n as large as possible.
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:
- n is a positive integer, which is in the range of [1, 10000].
 - All the integers in the array will be in the range of [-10000, 10000].
 
分析:将给出的整型数组分成两两一组后,返回每组最小值之和,要求和最大。
思路:分组时,让每组的差的平方和最小即可。最简单的方式,直接排序,依次分组。
JAVA CODE
class Solution {
    public int arrayPairSum(int[] nums) {
        Arrays.sort(nums);
        int sum = 0;
        for(int i = 0; i < nums.length; i += 2){
            sum += Math.min(nums[i],nums[i+1]);
        }
        return sum;
    }
}
Array Partition I的更多相关文章
- Leetcode#561. Array Partition I(数组拆分 I)
		
题目描述 给定长度为 2n 的数组, 你的任务是将这些数分成 n 对, 例如 (a1, b1), (a2, b2), ..., (an, bn) ,使得从1 到 n 的 min(ai, bi) 总和最 ...
 - 561. Array Partition I【easy】
		
561. Array Partition I[easy] Given an array of 2n integers, your task is to group these integers int ...
 - 【LEETCODE】39、第561题  Array Partition I
		
package y2019.Algorithm.array; /** * @ProjectName: cutter-point * @Package: y2019.Algorithm.array * ...
 - 561. Array Partition I - LeetCode
		
Question 561. Array Partition I Solution 题目大意是,给的数组大小是2n,把数组分成n组,每组2个元素,每个组取最小值,这样就能得到n个值,怎样分组才能使这n个 ...
 - [Swift]LeetCode561. 数组拆分 I | Array Partition I
		
Given an array of 2n integers, your task is to group these integers into n pairs of integer, say (a1 ...
 - 【LeetCode】数组-6(561)-Array Partition I(比较抽象的题目)
		
题目描述:两句话发人深思啊.... Given an array of 2n integers, your task is to group these integers into n pairs o ...
 - LeetCode 561. Array Partition I (数组分隔之一)
		
Given an array of 2n integers, your task is to group these integers into n pairs of integer, say (a1 ...
 - leetcode 561.Array Partition I-easy
		
Given an array of 2n integers, your task is to group these integers into n pairs of integer, say (a1 ...
 - [LeetCode] Array Partition I 数组分割之一
		
Given an array of 2n integers, your task is to group these integers into n pairs of integer, say (a1 ...
 
随机推荐
- selenium、python、firefox版本配合无敌
			
selenium (2.53.6) .python2.7.13. firefox46.0.1 完美
 - Tomcat Cluster负载均衡
			
author:JevonWei 版权声明:原创作品 Tomcat Cluster负载均衡 环境 tomcatA 172.16.253.108 tomcatB 172.16.253.105 代理服务器 ...
 - Centos 6修复/boot目录及fstab等系统文件
			
author:JevonWei 版权声明:原创作品 错误界面 系统修复过程中,若需要修复fatab挂载文件,磁盘分区为lvm逻辑卷格式,则默认在修复模式下处于不可活动状态,需使用vgchage -ay ...
 - 前端开发【第3篇:JavaScript序】
			
JavaScript历史 聊聊JavaScript的诞生 JavaScirpt鼻祖:Bremdan Eich(布兰登·艾奇),JavaScript的诞生于浏览器的鼻祖网景公司(Netscape),发布 ...
 - 第4阶段——制作根文件系统之编译配置安装busybox(3)
			
在上一节分析出制作一个最小的根文件系统至少需要: (1)/dev/console(终端控制台, 提供标准输入.标准输出以及标准错误) /dev/null (为空的话就是/dev/null, 所有写到 ...
 - sublime中如何在浏览器中打开文件?
			
SideBarEnhancements 侧边栏增强 SideBarEnhancements本是增强侧边栏的插件,这里将教大家如何用来做sublime text 3浏览器预览插件,并可自定义浏览器预览的 ...
 - 软工+C(2017第6期) 最近发展区/脚手架
			
// 上一篇:工具和结构化 // 下一篇:野生程序员 教育心理学里面有提到"最近发展区"这个概念,这个概念是前苏联发展心理学家维果茨基(Vygotsky)提出的,英文名词是Zone ...
 - 大家一起来找茬(BUG)
			
大家一起来找茬(BUG) ----------目录---------- 一.上手体验 1.主界面 2.功能 二.程序的 BUG 三.必应词典的 BUG 1."每日一句"里的句子不能 ...
 - 201521123082《Java程序设计》第3周学习总结
			
201521123082<Java程序设计>第3周学习总结 标签(空格分隔): Java 1.本周学习总结 XMind图: 2.书面作业 Q1.代码阅读 public class Test ...
 - 201521123119《Java程序设计》第11周学习总结
			
1. 本周学习总结 Q1.1 以你喜欢的方式(思维导图或其他)归纳总结多线程相关内容. 2. 书面作业 本次PTA作业题集多线程 Q1.互斥访问与同步访问 完成题集4-4(互斥访问)与4-5(同步访问 ...