牛客算法-選手最高平均水平

牛客算法-選手最高平均水平

問題描述:

牛牛舉辦了次編程比賽, 參加比賽的有3*n個選手,每個選手 都有一個水平值a_i.現在要將這些選手進行組隊,一共組成n個隊伍,即每個隊伍3人牛牛發現隊伍的水平值等於該隊伍隊員中第二高水平值。

輸入描述:
輸入的第一行爲一個正整數n(1≤n≤10^5)
第二行包括3*n個整數a_i(1≤a_i≤10^9),表示每個參賽邊手的水於值

思路:既然隊裏排名第二的選手實力爲全隊的平均水平,那麼通過排序後,將數組分成三份,將第二份的選手水平進行相加即可

#include<iostream>
#include<algorithm>
using namespace std;

int main()
{
	int number,maxAverage=0;
	cout<<"請輸入一個正整數:";
	cin>>number;
	if(number<=0){
		printf("%d",0);exit(0);
	}	
	int arr[3*number];
	for(int index=0;index<3*number;index++){
		cin>>arr[index];
	}
	sort(arr,arr+3*number);
	
	for(int index=2*number-1;index>number-1;index--){
		maxAverage+=arr[index];
	}
	
	printf("%d",maxAverage);
} 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章