#CCF准备一年日常刷题#201612-1 中间数
来源:互联网 发布:java wait notify 源碼 编辑:程序博客网 时间:2024/05/21 06:20
妈耶,大佬给了三个解法qaq
先上题:
问题描述
在一个整数序列a1, a2, …, an中,如果存在某个数,大于它的整数数量等于小于它的整数数量,则称其为中间数。在一个序列中,可能存在多个下标不相同的中间数,这些中间数的值是相同的。
给定一个整数序列,请找出这个整数序列的中间数的值。
给定一个整数序列,请找出这个整数序列的中间数的值。
输入格式
输入的第一行包含了一个整数n,表示整数序列中数的个数。
第二行包含n个正整数,依次表示a1, a2, …, an。
第二行包含n个正整数,依次表示a1, a2, …, an。
输出格式
如果约定序列的中间数存在,则输出中间数的值,否则输出-1表示不存在中间数。
样例输入
6
2 6 5 6 3 5
2 6 5 6 3 5
样例输出
5
样例说明
比5小的数有2个,比5大的数也有2个。
样例输入
4
3 4 6 7
3 4 6 7
样例输出
-1
样例说明
在序列中的4个数都不满足中间数的定义。
样例输入
5
3 4 6 6 7
3 4 6 6 7
样例输出
-1
样例说明
在序列中的5个数都不满足中间数的定义。
评测用例规模与约定
对于所有评测用例,1 ≤ n ≤ 1000,1 ≤ ai ≤ 1000。
昨天晚上心情不淡定没怎么看懂,今天想了下懂惹
解法一:
单引号双引号:点击打开链接
写完解法一,对题目的理解才真正到位,嗯……我觉得还需要时间再想想……
解法三:点击打开链接 (这个有前提,去看大佬写的吧) 桶排序还没有学,各种排序的优缺点又忘了sad……
解法二:写完了没什么知识点,就是先排序(划重点),排序真的很重要哎emmmm和解法一好像是一样的,所以只要加一个memset清零函数可以把数组达到map的效果!!!!!
阅读全文
0 0
- #CCF准备一年日常刷题#201612-1 中间数
- #CCF准备一年日常刷题#201409-1相邻数对
- #CCF准备一年日常刷题#201412-1 门禁系统
- #CCF准备一年日常刷题#201503-1图像旋转
- #CCF准备一年日常刷题#201509-1 数列分段
- #CCF准备一年日常刷题#201512-1 数位之和
- #CCF准备一年日常刷题#201609-1 最大波动
- #CCF准备一年日常刷题#201703-1 分蛋糕
- #CCF准备一年日常刷题#201403相反数
- #CCF准备一年日常刷题#201312-2 ISBN号码
- #CCF准备一年日常刷题#201403-2窗口
- #CCF准备一年日常刷题#201409-2 画图
- #CCF准备一年日常刷题#201503-2 数字排序
- #CCF准备一年日常刷题#201509-2 日期计算
- #CCF准备一年日常刷题#2011604-1 折点计数
- #CCF准备一年日常刷题#201312-3 最大的矩形
- #CCF准备一年日常刷题#201412-2 Z字形扫描
- CCF 201612-1 中间数
- NET Core-学习笔记(一)
- [oracle]创建profile 创建角色用户
- [容斥原理+组合数学]51 Nod 1829——函数
- 期刊编审流程
- iOS copy相关
- #CCF准备一年日常刷题#201612-1 中间数
- 文件IO
- 交叉编译boost和opencv
- 查找数组中第K个最小值
- MAC电脑常用快捷键
- 防卫式声明笔记----C++学习之路
- java IO流 之 字符流 之 FileReader
- EBS开发_此责任无可用函数
- 实现基于文件验证的vsftpd虚拟用户和基于MYSQL验证的vsftpd虚拟用户