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];
}
相关推荐
jinyishu_23 分钟前
模拟实现 C++ 栈和队列——从适配器模式看懂 STL 容器之美
java·c++·适配器模式
hehelm24 分钟前
AI大模型接入SDK—通用模块设计
linux·开发语言·c++
什巳1 小时前
JAVA练习309- 二叉树的层序遍历
java·数据结构·算法·leetcode
行思理2 小时前
微信支付“商家转账用户确认模式”,新手教程
java·开发语言·微信
麻瓜老宋3 小时前
AI开发C语言应用按步走,表达式计算器calc的第一步,中缀表达式词法分析
c语言·开发语言·atomcode
hold?fish:palm3 小时前
RDB全量快照备份
c++·redis·后端
灯澜忆梦3 小时前
GO_文件处理---字符串操作
开发语言·golang
什巳3 小时前
JAVA练习306- 翻转二叉树
java·数据结构·算法·leetcode
-银雾鸢尾-3 小时前
里氏替换原则
开发语言·c#·里氏替换原则
এ慕ོ冬℘゜3 小时前
JavaScript 数组核心方法实战|新增元素 + 数组转字符串 零基础详解
开发语言·javascript·ecmascript