#43640: python 其實你不需要比較所有可能出現的狀況


sam851015@gmail.com (多挖鼻孔有益身心健康)

學校 : 不指定學校
編號 : 277705
來源 : [123.192.228.253]
最後登入時間 :
2024-11-09 20:16:56
a466. 12289 - One-Two-Three -- UVa12289 | From: [123.192.228.253] | 發表日期 : 2024-10-22 08:19

分辨 three 很簡單,看字串長度就好

 

分辨 one 和 two 的話,只需要比較每個字母是否相符
是的話就紀錄為 True,反之為 False,最後把所有的布林值相加,如果大於等於 2 代表條件滿足
(完全匹配或只錯一個字母)

 

for _ in range(int(input())):
word = input().rstrip()
if len(word) > 3:
print(3)

elif sum(word[i] == 'one'[i] for i in range(3)) >= 2:
print(1)

else:
print(2)

 

這樣寫就優雅多了,就算題目打算出很長長長長長的字串也能用這方式應對

 

 
ZeroJudge Forum