python小趣題之統計數字對

2021-08-27 18:42:31 字數 1021 閱讀 7028

上月幫國外的同學做了一道非常基礎的python題,比較有意思,再次記錄一下,題目意思如下:

有這麼乙個數字對的list:

list_digit =[56448162, 5433721, 34751217, 686221321, 65220111,

54349339, 40709944, 63967760, 48056573, 78300211]

請控制台列印並統計出現最高的首尾數字對是哪個?

# coding=utf-8

defmain

(): fl_list =

list_digit = [56448162, 5433721, 34751217, 686221321, 65220111, 54349339, 40709944, 63967760, 48056573, 78300211]

for digit in list_digit:

pairs = (int(str(digit)[0]), int(str(digit)[-1]))

# 將首尾數字拼接成元組放入list,list中可以有重複元素

# 元組可以過濾重複相同元素,所以將list轉成乙份元組

fl_set = set(fl_list)

# 字典統計個數,將元組作為key,出現的次數作為value

count_dict = {}

for fl in fl_set:

count_dict[fl] = fl_list.count(fl)

print(f'統計的次數:')

# 將dict中的value最大值對應的key值取出來,用max函式實現,第乙個引數傳入dict,第二個傳入key

print('出現最高的首尾數字對為:' + str(max(count_dict, key=count_dict.get)))

if __name__ == '__main__':

main()

主要是利用了python的基礎資料結構,dict和set來完成去重統計。

演算法實現題 統計數字

一本書的頁碼從自然數 1 開始順序編碼直到自然數 n。書的頁碼按照通常的習慣編排,每個頁碼都不含多餘的前導數字 0。例如,第 6 頁用數字 6 表示,而不是 06 或 006 等。數字計數問題要求對給定書的總頁碼 n,計算出書的全部頁碼中分別用到多少次數字 0,1,2,9。給定表示書的總頁碼的 10...

每日一題 統計數字

難度星級 2星 主要考察 排序 字典 這是一道簡單 相對於部分語言來說 的排序的題目,先來看題 時間限制 c c 1秒,其他語言2秒 空間限制 c c 262144k,其他語言524288k 64bit io format lld 某次科研調查時得到了n個自然數,每個數均不超過1500000000 ...

演算法實現題 1 1 統計數字問題

問題描述 一本書的頁碼從自然數 1 開始順序編碼直到自然數 n。書的頁碼按照通常的習慣編排,每個頁碼都不含多餘的前導數字 0。例如,第 6 頁用數字 6 表示,而不是 06 或 006 等。數 字計數問題要求對給定書的總頁碼 n,計算出書的全部頁碼中分別用到多少次數字 0,1,2,9。程式設計任務 ...