2016-12-1中間數 python 100分

問題描述
  在一個整數序列a1, a2, …, an中,如果存在某個數,大於它的整數數量等於小於它的整數數量,則稱其爲中間數。在一個序列中,可能存在多個下標不相同的中間數,這些中間數的值是相同的。
  給定一個整數序列,請找出這個整數序列的中間數的值。
輸入格式
  輸入的第一行包含了一個整數n,表示整數序列中數的個數。
  第二行包含n個正整數,依次表示a1, a2, …, an。
輸出格式
  如果約定序列的中間數存在,則輸出中間數的值,否則輸出-1表示不存在中間數。
樣例輸入
6
2 6 5 6 3 5
樣例輸出
5
樣例說明
  比5小的數有2個,比5大的數也有2個。

n = int(input())
num = list(map(int, input().split()))

num.sort()
num_list = set()

for i in num:
    a = b = 0
    for j in num:
        if i>j:
            a = a+1
        elif i<j:
            b = b+1
    if a==b:
        num_list.add(i)

if len(num_list) == 0:
    print('-1')
else:
    for i in num_list:
        print(i, end=' ')



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章