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];
}
相关推荐
@卞1 分钟前
排序算法(3)--- 交换排序
数据结构·算法·排序算法
csbysj20203 分钟前
SVG 椭圆详解
开发语言
youngee1112 分钟前
hot100-55有效的括号
算法·leetcode·职场和发展
oioihoii18 分钟前
C++数据竞争与无锁编程
java·开发语言·c++
资生算法程序员_畅想家_剑魔19 分钟前
Java常见技术分享-16-多线程安全-并发编程的核心问题
java·开发语言
We....19 分钟前
Java SPI 机制
java·开发语言
嘻嘻嘻开心21 分钟前
C语言学习笔记
c语言·数据结构·算法
Blossom.11821 分钟前
GPTQ量化实战:从零手写大模型权重量化与反量化引擎
人工智能·python·算法·chatgpt·ai作画·自动化·transformer
Macbethad23 分钟前
区块链技术在分布式系统中的应用实践技术报告
开发语言·c#
睡醒了叭35 分钟前
图像分割-传统算法-区域分割
图像处理·人工智能·算法·计算机视觉