#include<stdio.h>
#include<algorithm> //使用该头文件里的sort函数
using namespace std;
int main(){
int n,a[1000];
scanf("%d",&n);
for(int i=0;i<n;i++){
scanf("%d",&a[i]);
}
sort(a,a+n); //对数组进行从小到大的排序
int s=0,b=0; //分别看看比中间的数小的数的个数 和大于它的个数
int mid=n/2,i=0,j=n-1; //a[mid]为中间位置的数
while(a[i]<a[mid]){ //从前往后找小于a[mid]的数的个数
i++;
s++;
}
while(a[j]>a[mid]){ //从后往前找大于a[mid]的数的个数
j--;
b++;
}
if(s==b) printf("%d",a[mid]); //若大于a[mid]和小于a[mid]的数个数相同 ,a[mid]即为中数
else printf("-1");
return 0;
}
调用了一个sort函数排序,排完序再找中数。