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];
}
相关推荐
一个不知名程序员www2 小时前
算法学习入门 --- 哈希表和unordered_map、unordered_set(C++)
c++·算法
二哈喇子!2 小时前
BOM模型
开发语言·前端·javascript·bom
C++ 老炮儿的技术栈3 小时前
在C++ 程序中调用被 C编译器编译后的函数,为什么要加 extern “C”声明?
c语言·c++·windows·git·vscode·visual studio
二哈喇子!3 小时前
空指针异常
开发语言
咚为3 小时前
Rust Print 终极指南:从底层原理到全场景实战
开发语言·后端·rust
%xiao Q3 小时前
GESP C++五级-202406
android·开发语言·c++
Psycho_MrZhang3 小时前
Neo4j Python SDK手册
开发语言·python·neo4j
Traced back3 小时前
# C# + SQL Server 实现自动清理功能的完整方案:按数量与按日期双模式
开发语言·c#
Sarvartha3 小时前
C++ STL 栈的便捷使用
c++·算法
sin22013 小时前
MyBatis的执行流程
java·开发语言·mybatis