OpenJudge | 寻找中位数

总时间限制: 1000ms 内存限制: 65536kB

描述

在N(1<=N<10,000且N为奇数)个数中,找到中位数。

输入

第1行:N

第2至N+1行:每行是一个整数

输出

第一行:中位数

样例输入

cpp 复制代码
5
2
4
1
3
5

样例输出

cpp 复制代码
3

分析

  1. 由题目的样例输出可以知道,3不在输入序列2 4 1 3 5的中间,但是它是中位数,这或许会涉及到排序。
  2. 然后通过下标直接找到中位数。

Code

cpp 复制代码
#include <bits/stdc++.h>

using namespace std;

int main() {
	int N, num;
	vector<int> v;
	cin >> N;
	for(int i = 1; i <= N; i++) {
		cin >> num;
		v.insert(v.end(), num);
	}
	sort(v.begin(), v.end());
	cout << v[(0+N)/2];
}
相关推荐
长不胖的路人甲3 小时前
Serial 串行、Parallel 并行、CMS 并发收集器
java·开发语言·jvm
@三十一Y3 小时前
C++:AVL树实现
c++
ShineWinsu4 小时前
对于Linux:传输层协议UDP原理的解析
linux·c++·面试·udp·协议·传输层·计算机系统
LingzhiPi4 小时前
零知派ESP32--AS5600磁吸旋钮音量控制器
c++·单片机·嵌入式硬件
小保CPP4 小时前
OpenCV C++车型识别1-图像预处理
c++·人工智能·opencv·计算机视觉
霸道流氓气质5 小时前
分布式系统中接口时序不确定性处理
java·开发语言·分布式
库克克5 小时前
【C++】C++11 包装器function 与 绑定器 bind
开发语言·c++
多加点辣也没关系5 小时前
JavaScript|第30章:事件机制
开发语言·javascript
小大宇5 小时前
python milvus 案例
开发语言·python·milvus
小小龙学IT5 小时前
C++ Placement New 与显式析构:手动对象生命周期管理的艺术
c++·windows·mfc