为了理解这种方法,让我们从不同的角度来看待问题。我们需要形成数组元​​素的配对,使得这种配对中最小的总和最大。因此,我们可以查看选择配对中最小值的操作,比如 (a,b)(a,b) 可能会产生的最大损失 a-ba−b (如果 a > ba>b)。

如果这类配对产生的总损失最小化,那么总金额现在将达到最大值。只有当为配对选择的数字比数组的其他元素更接近彼此时,才有可能将每个配对中的损失最小化。

考虑到这一点,我们可以对给定数组的元素进行排序,并直接按排序顺序形成元素的配对。这将导致元素的配对,它们之间的差异最小,从而导致所需总和的最大化。

class Solution {
public:
int arrayPairSum(vector<int>& nums) {
int sum=;
sort(nums.begin(),nums.end());
for(auto it=nums.begin();it<nums.end();it+=)
{
sum+=(*it);
}
return sum;
}
};

最新文章

  1. B树
  2. HttpFox插件安装和打开教程
  3. js操纵css更改加载图片大小
  4. easyUI datagrid editor扩展dialog
  5. Expression Add Operators
  6. RAC的QA
  7. HTC Vive开发笔记之手柄控制
  8. [Node.js] Introduction to apiCheck.js
  9. CSS超链接-光标-缩放
  10. Linux Curl常用命令使用【转】
  11. MySQL Administrator的简单操作
  12. 如何在.Net中使用MongoDB
  13. Response乱码时的处理方法
  14. K:哈弗曼树
  15. idea 常用快捷键
  16. 区间DP 基本题集
  17. R常用操作
  18. Finding Lines UVALive - 6955(随机)
  19. win10安装MarkdownPad 2报错This view has crashed的处理及md简单语法
  20. buildroot构建项目(一)---buildroot介绍

热门文章

  1. Gin实现依赖注入
  2. 某企业用友U8+中勒索病毒后数据修复及重新实施过程记录
  3. LeetCode 20:有效的括号 Valid Parentheses
  4. Dubbo从入门到实战:入门篇
  5. springboot 1.4 CXF配置
  6. mysql的sql调优: slow_query_log_file
  7. 拒绝CPU挖矿矿工有责
  8. WEBAPI获取数据
  9. Java开发在线考试系统 使用ssh框架编写源码
  10. python3之int类的常用方法练习