PAT A1029 Median (25分)

前言

传送门

正文

PAT A1029 Median (25分)_第1张图片
参考题解

#include
#include
#include
using namespace std;
/*
题意:对于给定的两个升序序列,将两个序列的所有元素合并后,输出其中间元素的值 
中间元素即位于整个序列中间位置的元素。
例如
序列 11 12 13 14 其median为12
序列 9 10 15 16 17 其median为15
合并后的序列 9 10 11 12 13 14 15 16 17 其median为13 

思路:本题主要解决两个问题,一是合并两个序列为一个新的升序序列
二是找到median 
*/
int main(){
	int  n1,n2;
	cin>>n1;
	vector<long long> v;
	long long temp;
	for(int i=0;i<n1;i++){
		scanf("%lld",&temp);
		v.push_back(temp);
	}
	cin>>n2;
	for(int i=0;i<n2;i++){
		scanf("%lld",&temp);
		v.push_back(temp);
	}
	sort(v.begin(),v.end());
	int len=v.size();
	cout<<v[(len-1)/2]<<endl;
	return 0;
}

你可能感兴趣的:(PAT甲级,vector,数学题,中位数)