【題目】
小易有一個古老的游戲機(jī)戏罢,上面有著經(jīng)典的游戲俄羅斯方塊。因?yàn)樗容^古老则披,所以規(guī)則和一般的俄羅斯方塊不同一忱。
熒幕上一共有 n 列莲蜘,每次都會有一個 1 x 1 的方塊隨機(jī)落下,在同一列中帘营,后落下的方塊會疊在先前的方塊之上票渠,當(dāng)一整行方塊都被占滿時,這一行會被消去芬迄,并得到1分问顷。
有一天,小易又開了一局游戲,當(dāng)玩到第 m 個方塊落下時他覺得太無聊就關(guān)掉了杜窄,小易希望你告訴他這局游戲他獲得的分?jǐn)?shù)肠骆。
輸入描述
第一行兩個數(shù) n, m
第二行 m 個數(shù),c1, c2, ... , cm 羞芍, ci 表示第 i 個方塊落在第幾列
其中 1 <= n, m <= 1000, 1 <= ci <= n
輸入例子
3 9
1 1 2 2 2 3 1 2 3
輸出例子
2
python 代碼
from collections import Counter
if __name__ == '__main__':
nm = input()
n, m = nm.split()[:2]
n = int(n)
m = int(m)
num = input().split()
score = 0
result ={}
for i in set(num[:m]):
result[i]= num.count(i)
set1=set(eval(i) for i in result.keys())
set2 = set(range(1,n+1))
if set1==set2:
print(min(list(Counter(result).values())))
else:
print(0)
知識點(diǎn)
思路是:
獲取輸入
轉(zhuǎn)換為數(shù)字類型,可以使用eval()函數(shù)去除引號:
a='123456'
print(eval(a)) ->123456
使用count()統(tǒng)計每個元素的個數(shù)郊艘,生成為字典形式
對比keys是否包含所有的數(shù)據(jù)
最后選取最小的數(shù)據(jù)即為輸出結(jié)果