題目連結(jié):
題目大意:
每列給定一字串(只由大寫英文字母組成),試問該字串在先前的輸入有無出現(xiàn)過。有的話,輸出「1」;反之,輸出「0」。
範(fàn)例輸入:
CHUANG
HAOYU
LIKE
A
FROG
A
FROG
LIKE
HAOYU
CHUANG
範(fàn)例輸出:
0
0
0
0
0
1
1
1
1
1
解題思維:
利用雜湊表(Hash Table)比對每個給定的字串是否出現(xiàn)過(有在雜湊表裡),有的話就輸出「1」;反之,則輸出「0」,並加入雜湊表裡。
C++ 的話,可以使用 map 、 unordered_map 或是 set 來充當(dāng)雜湊表,python 則可以用 dict 。而因為本題的輸入量並不小,所以需要有輸入方面的最佳化,詳見
此題。
此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。