【ACM】中位数

制限時間:3秒メモリ制限:64メガバイトを
送信:729解決:195

問題の説明

データのグループを順次小から大へ順に配置され、中間位置の数字は中央値と呼ばれます。

ビット数が9であることを特徴とする請求1510119例なぜなら中間位置に、9を選別した後。

今、あなたにいくつかの数字を与えるために、あなたは中央値を見つけます。

エントリー

T(1 <= T <= 1000)の整数入力の最初の行は、テスト・データ・セットの数を示します。次の行は奇数Mであり、テストデータのセットはM(1 <= M <= 1000)の数の合計を示しています。次の行のMは整数が10,000より大きくない未満-10000はない互いに異なる整数を、持っています。

輸出

テストデータ出力の各セットの中央値Mを表す整数のための

サンプル入力

1
5
1 5 10 11 9

サンプル出力

9
#include<iostream>
#include<algorithm>
using namespace std;
int a[1003];
int main(){	
	int n,x;
	cin>>n;
	while(n--){
		cin>>x;
		for(int i=0;i<x;i++)
			cin>>a[i];
		nth_element(a,a+x/2,a+x);
		cout<<a[x/2]<<endl;
	}
} 

 

公開された46元の記事 ウォン称賛39 ビュー40000 +

おすすめ

転載: blog.csdn.net/weixin_42128813/article/details/103591793