解题思路:
1,先把列表进行排序,找出中间值。
2,然后列表切片,中间值左边left是 比中间值小的数,右边right是 比中间值大的数。
3,最后为了排除 left中 和 right中 和中间值相同的数,用循环找出比中间值 大的数的个数 和 比中间值 小的数的个数,进行比较是否相同即可。
n = int(input())
a = list(map(int,input().split()))
a.sort() #把列表a排序
max = 0
min = 0
mid = len(a) // 2 #求出中间值
left = a[:mid:]
right = a[mid::]
for i in range(len(left)): #排除 和中间值相同的数
if left[i] < a[mid]:
min += 1
for i in range(len(right)):
if right[i] > a[mid]:
max += 1
if min == max:
print(a[mid])
else:
print(-1)