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];
}
相关推荐
2501_937860942 分钟前
从JDBC到数据访问:Java数据库编程完全指南
java·开发语言·数据库
FfHUCisI3 分钟前
Golang SSA 中间表示与优化 Pass
开发语言·后端·golang
Interview Aid1127 分钟前
Akuna OA 题目拆解|三题思路复盘
linux·运维·算法·面试·职场和发展
JacksonMx8 分钟前
Java 服务调用下游接口注意点
java·开发语言
兔兔兔兔115 分钟前
记录C++ 11
开发语言·c++
码匠许师傅22 分钟前
【C++ 面试真题】32. 聊聊 C++ 的原子变量与无锁编程
java·c++·面试
撩得Android一次心动26 分钟前
Kotlin 语言【知识点整理2】
android·开发语言·kotlin
TAN-90°-27 分钟前
Deep Learning for Computer Vision——Recurrent Neural Networks
数据结构·人工智能·rnn·深度学习·神经网络·机器学习·计算机视觉
不会就选b30 分钟前
Linux之线程池(一)
java·开发语言
wabs66632 分钟前
关于栈【力扣150.逆波兰表达式求值的思考】
数据结构·c++·算法·leetcode··代码随想录