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];
}
相关推荐
Jack209 小时前
HarmonyOS开发中错误处理策略:网络异常统一处理
算法
小小杨树10 小时前
读懂色彩:拍照调色不再难
算法·计算机视觉·配色
JieE2121 天前
LeetCode 226. 翻转二叉树|JS 递归超详细拆解,二叉树入门经典题
javascript·算法
JieE2121 天前
LeetCode 104. 二叉树的最大深度|递归思路超详细拆解
javascript·算法
vivo互联网技术1 天前
CVPR 2026 | 全新强化学习框架 BeautyGRPO:重塑真实人像
算法·大模型·cvpr·影像
Darling噜啦啦1 天前
列表转树算法深度解析:从 Map 到 Reduce 的两种实现,面试高频考点
数据结构·算法·面试
clint4561 天前
C++进阶(1)——前景提要
c++
用户497863050731 天前
(一)小红的数组操作
算法·编程语言
夜悊2 天前
C++代码示例:进制数简单生成工具
c++