#OD283. 最大N个数与最小N个数的和

最大N个数与最小N个数的和

题目解析和算法源码

华为OD机试 - 最大N个数与最小N个数的和(Java & JS & Python & C & C++)_求数组中最大n个与与最小n个数的和_伏城之外的博客-CSDN博客

OJ用例

题解 - 最大N个数与最小N个数的和 - Hydro

题目描述

给定一个数组,编写一个函数来计算它的最大N个数与最小N个数的和。你需要对数组进行去重。

说明:

  • 数组中数字范围[0, 1000]
  • 最大N个数与最小N个数不能有重叠,如有重叠,输入非法返回-1
  • 输入非法返回-1

输入描述

  • 第一行输入M, M标识数组大小
  • 第二行输入M个数,标识数组内容
  • 第三行输入N,N表达需要计算的最大、最小N个数

输出描述

输出最大N个数与最小N个数的和

用例1

输入

5
95 88 83 64 100
2

输出

342

说明

最大2个数[100,95],最小2个数[83,64], 输出为342。

用例2

输入

5
3 2 3 4 2
2

输出

-1

说明

最大2个数[4,3],最小2个数[3,2], 有重叠输出为-1。