問題描述
試題編號:
201612-1
試題名稱:
中間數時間限制:
1.0s
記憶體限制:
256.0mb
問題描述:
問題描述
在乙個整數序列a1, a2, …, an中,如果存在某個數,大於它的整數數量等於小於它的整數數量,則稱其為中間數。在乙個序列中,可能存在多個下標不相同的中間數,這些中間數的值是相同的。
給定乙個整數序列,請找出這個整數序列的中間數的值。
輸入格式
輸入的第一行包含了乙個整數n,表示整數序列中數的個數。
第二行包含n個正整數,依次表示a1, a2, …, an。
輸出格式
如果約定序列的中間數存在,則輸出中間數的值,否則輸出-1表示不存在中間數。
樣例輸入
62 6 5 6 3 5
樣例輸出
樣例說明
比5小的數有2個,比5大的數也有2個。
樣例輸入
43 4 6 7
樣例輸出
-1樣例說明
在序列中的4個數都不滿足中間數的定義。
樣例輸入
53 4 6 6 7
樣例輸出
-1樣例說明
在序列中的5個數都不滿足中間數的定義。
評測用例規模與約定
對於所有評測用例,1 ≤ n ≤ 1000,1 ≤ ai ≤ 1000。
**
#中間數
n = int(input())
a = list(map(int,input().split()))
a.sort()#資料排序
middle = n//2#初始為中間位置
before = n//2
after = n//2
while before > 0 and a[middle] == a[before-1]:#向左查詢中間數相同的數,左邊界
before-=1
while after < n-1 and a[middle] == a[after+1]:#向右查詢,右邊界
after+=1
if(before == (n-1-after)):#左右邊界對稱,中間數存在
print(a[middle])
else:#否則不存在
print(-1)
python ccf題解201612 2 工資計算
問題描述 試題編號 201612 2 試題名稱 工資計算 時間限制 1.0s 記憶體限制 256.0mb 問題描述 問題描述 小明的公司每個月給小明發工資,而小明拿到的工資為交完個人所得稅之後的工資。假設他乙個月的稅前工資 扣除五險一金後 未扣稅前的工資 為s元,則他應交的個人所得稅按如下公式計算 ...
python ccf題解 201809 1 賣菜
問題描述 試題編號 201809 1 試題名稱 賣菜時間限制 1.0s 記憶體限制 256.0mb 問題描述 問題描述 在一條街上有n個賣菜的商店,按1至n的順序排成一排,這些商店都賣一種蔬菜。第一天,每個商店都自己定了乙個 店主們希望自己的菜價和其他商店的一致,第二天,每一家商店都會根據他自己和相...
題解 SDOI2016 征途
link 題目大意 給定序列,將它劃分為 m 段使得方差最小,輸出 s 2 m 2 乙個整數 text 這題我通過題解中的大佬部落格學到了一般化方差柿子的寫法。下面來推柿子 s 2 frac n x i overline 2 frac sum n x i 2 n frac n x i 2 2 sum...