首页 > 试题广场 >

在数组中找到出现次数大于一半的数

[编程题]在数组中找到出现次数大于一半的数
  • 热度指数:1800 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
给定一个整型数组arr,请打印其中出现次数大于一半的数,如果没有这样的数,请输出-1。

输入描述:
输入包含两行,第一行包含一个整数n,代表数组长度,第二行包含n个数,代表数组arr


输出描述:
输出一个整数,代表出现次数大于一半的数,如果没有这样的数,请输出‘-1“。
示例1

输入

5
11 7 5 7 7

输出

7
示例2

输入

4
2 2 3 3

输出

-1

备注:
时间复杂度,额外空间复杂度

这道题你会答吗?花几分钟告诉大家答案吧!