【华为OD机考 统一考试B卷】 查找众数及中位数

158 阅读2分钟

华为OD机考:统一考试A卷+B卷+C卷

2023年11月份,华为官方已经将 华为OD机考:OD统一考试(A卷 / B卷)切换到 OD统一考试(C卷) 。根据考友反馈:目前抽到的试卷为B卷或C卷,其中C卷居多 ,按照之前的经验C卷部分考题会复用A卷,B卷题,博主正积极从考过的同学收集C卷真题。 可以先继续刷B卷, C卷的题目会放在现在大家购买的专栏内,不需要重新购买,请大家放心。 专栏:2023华为OD机试( B卷+C卷)(C++JavaJSPy)

华为OD面试真题精选:华为OD面试真题精选

在线OJ:点击立即刷题,模拟真实机考环境

华为, OD, 机考, A卷, B卷, C卷, 华为OD机考,华为OD机考B卷, 华为OD机试B卷,华为OD机试C卷,华为OD机考C卷, 华为OD机考题目, 华为OD机考答案, 华为OD机考解析 ,华为OD机考C卷真题,华为OD机考C卷题解

题目描述

  1. 众数是指一组数据中出现次数量多的那个数,众数可以是多个。
  2. 中位数是指把一组数据从小到大排列,最中间的那个数,如果这组数据的个数是奇数,那最中间那个就是中位数,如果这组数据的个数为偶数,那就把中间的两个数之和除以2,所得的结果就是中位数。
  3. 查找整型数组中元素的众数并组成一个新的数组,求新数组的中位数。

输入描述

  • 输入一个一维整型数组,数组大小取值范围 0<N<1000,数组中每个元素取值范围 0<E<1000

输出描述

  • 输出众数组成的新数组的中位数

ACM输入输出模式

如果你经常使用Leetcode,会知道letcode是不需要编写输入输出函数的。但是华为OD机考使用的是 ACM 模式,需要手动编写输入和输出。

所以最好在牛-客上提前熟悉这种模式。例如C++使用cin/cout,python使用input()/print()。JavaScript使用node的readline()console.log()。Java 使用sacnner/system.out.print()

用例

输入10 11 21 19 21 17 21 16 21 18 15
输出21
输入2 1 5 4 3 3 9 2 7 4 6 2 15 4 2 4
输出3
输入5 1 5 3 5 2 5 5 7 6 7 3 7 11 7 55 7 9 98 9 17 9 15 9 9 1 39
输出7