中间数
作者:
卷风兔子
,
2024-03-20 11:28:55
,
所有人可见
,
阅读 3
#include<bits/stdc++.h>
using namespace std;
const int N=1010;
int a[N];
void quick_sort(int a[],int l,int r){
if(l>=r) return;
int i=l-1,j=r+1;
int x=a[(l+r)/2];
while(i<j){
do i++;while(a[i]<x);
do j--;while(a[j]>x);
if(i<j) swap(a[i],a[j]);
}
quick_sort(a,l,j);
quick_sort(a,j+1,r);
}
int main(){
int n;
cin>>n;
for(int i=1;i<=n;i++) cin>>a[i];
quick_sort(a,1,n);
int l=0,r=0,mid=(1+n)/2;
for(int i=1;i<=n;i++){
if(a[mid]>a[i]) l++;
else if(a[mid]<a[i]) r++;
}
if(l==r) cout<<a[mid]<<endl;
else cout<<-1<<endl;
return 0;
}