FDU 2018 | 1. 求众数

2024-03-21 14:52
文章标签 2018 众数 fdu

本文主要是介绍FDU 2018 | 1. 求众数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 1. 题目描述
  • 2. 我的尝试

1. 题目描述

AcWing 3685 求众数

给定一个长度为 n 的整数序列,请你求出该序列的众数。

众数就是一个序列中出现次数最多的数字。

如果不唯一,则输出小的那个值。

输入格式

第一行输入一个整数 n,表示有 n 个数。
第二行输入 n个整数。

输出格式

输出序列中的众数,如果不唯一,则输出小的那个值。

数据范围
1 ≤ n ≤ 1 0 5 1≤n≤10^5 1n105, 序列中整数的取值范围 [ − 1 0 9 , 1 0 9 ] [−10^9,10^9] [109,109]

输入样例

8
10 3 8 8 3 2 2 2

输出样例

2

2. 我的尝试

数据范围 1 0 5 10^5 105 O ( n l o g n ) O(nlogn) O(nlogn)的算法即可满足,可以先把所有的数读入数组,再对数组排序,然后从头扫描数组找到排序后连续出现最多的数即为众数。

因为题目要求不唯一时输出最小的众数,因此扫描时的更新条件为if (cnt > max)

#include <bits/stdc++.h>using namespace std;const int N = 1e5 + 10;
int a[N];int main() {int n;cin >> n;for (int i = 0; i < n; i++)scanf("%d", &a[i]);sort(a, a + n);int cur = a[0], cnt = 0, res = a[0], max = -1;for (int i = 0; i <= n; i++){if (i < n && a[i] == cur) cnt ++;else {if (cnt > max){res = cur;max = cnt;}cur = a[i];cnt = 1;}}cout << res;}

这篇关于FDU 2018 | 1. 求众数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/832954

相关文章

BUUCTF靶场[web][极客大挑战 2019]Http、[HCTF 2018]admin

目录   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 [web][HCTF 2018]admin 考点:弱密码字典爆破 四种方法:   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 访问环境 老规矩,我们先查看源代码

2018秋招C/C++面试题总结

博主从8月中旬开始大大小小面试了十几家公司,至今也许是告一段落吧,希望后面会有好结果,因此总结记录一些C/C++方向常见的问题。和大家一起学习! 参考了互联网的各种资源,自己尝试归类整理,谢谢~ 一、C和C++的区别是什么? C是面向过程的语言,C++是在C语言的基础上开发的一种面向对象编程语言,应用广泛。 C中函数不能进行重载,C++函数可以重载 C++在C的基础上增添类,C是一个结构

大厂算法例题解之网易2018秋招笔试真题 (未完)

1、字符串碎片 【题目描述】一个由小写字母组成的字符串可以看成一些同一字母的最大碎片组成的。例如,“aaabbaaac” 是由下面碎片组成的:‘aaa’,‘bb’,‘c’。牛牛现在给定一个字符串,请你帮助计算这个字符串的所有碎片的 平均长度是多少。 输入描述: 输入包括一个字符串 s,字符串 s 的长度 length(1 ≤ length ≤ 50),s 只含小写字母(‘a’-‘z’) 输出描述

vulhub GhostScript 沙箱绕过(CVE-2018-16509)

1.执行以下命令启动靶场环境并在浏览器访问 cd vulhub/ghostscript/CVE-2018-16509 #进入漏洞环境所在目录   docker-compose up -d #启动靶场   docker ps #查看容器信息 2.访问网页 3.下载包含payload的png文件 vulhub/ghostscript/CVE-2018-16509/poc.png at

Python JAVA接口UTC 时间 '2018-08-06T10:00:00.000Z' 格式转化为本地时间

Python JAVA接口UTC 时间 '2018-08-06T10:00:00.000Z' 格式转化为本地时间 方法1 import datetimeorigin_date_str= "2019-07-26T08:20:54Z"utc_date = datetime.datetime.strptime(origin_date_str, "%Y-%m-%dT%H:%M:%SZ")loca

2018年年终体会~

说下最近的一件事情:2018年12月08日华为云培训云原生课程,我坚持了两周,中间休假了,回来就忘记了。错过了一天的打开。这次21天的云原生课程彻底失败。反思后,不是我不想学习,也不是我没有毅力,而是人总是容器在平凡中失去自己,失去自己的目标,就像《千与千寻》中一样,慢慢的生活磨砺自己,慢慢的平淡消耗你自己,你自己都忘记了,自己是为了什么,每年都会给自己立flag,可是很难坚持下去,就

2018Java高级工程师面试总结

2018Java高级工程师面试总结 java高级 2018-10-11 15:11:42 面试的岗位是Java后台开发,面的公司不多,主要有美团点评-网易-网易有道-携程-华为-中兴-科大讯飞-烽火通信这些公司。从前到后简单记录了自己面试时候遇到的问题,以及对面试给了一点点小的建议,给明年甚至以后的师弟师妹们一些参考。欢迎各位朋友一起交流。 关注我:私信回复“架构资料”获取往期Java高级架

NLP-预训练模型-2018:Bert字典

参考资料: 我的BERT!改改字典,让BERT安全提速不掉分(已开源)

2018中国金融科技竞争力100强榜单

2018--金融科技--榜单  2018--金融科技--评价标准   参考地址:https://biz.ifeng.com/a/20180630/45044607_0.shtml

算法day17|如何求普通二叉树的众数

算法day17|如何求普通二叉树的众数 501的变式:普通二叉树的众数 501的变式:普通二叉树的众数 如果把二叉搜索树变成普通二叉树,我们该怎么思考呢?这个时候就要回到我一开始的思路了,用哈希表来解决问题。 class Solution {public:unordered_map<int,int> map;void traversal(TreeNode* root){if(