leetcode 1160 拼寫單詞

2021-10-04 01:48:20 字數 1381 閱讀 1699

)# chars去重

dic_char=

for char in chars_1:

# 統計每個字母在chars**現的次數,並存為字典

dic_char[char]

= chars.count(char)

ans =

0for word in words:

dic_w =

break_flag =

false

for char in word:

# 對每個單詞中的字母統計數量

dic_w[char]

= word.count(char)

# 與chars**現的次數進行比對

ifall

([dic_w[i]

<= dic_char[i]

if i in dic_char else

0for i in word]):

ans +=

len(word)

return ans

優化

collection包中的counter()計數器,自動統計值出現的次數並返回為字典。

class

solution

:def

countcharacters

(self, words: list[

str]

, chars:

str)

->

int:

ans =

0 cnt = collections.counter(chars)

for w in words:

c = collections.counter(w)

ifall

([c[i]

<= cnt[i]

for i in c]):

ans +=

len(w)

return ans

LeetCode 1160 拼寫單詞

題目 給你乙份 詞彙表 字串陣列 words 和一張 字母表 字串 chars。假如你可以用 chars 中的 字母 字元 拼寫出 words 中的某個 單詞 字串 那麼我們就認為你掌握了這個單詞。注意 每次拼寫時,chars 中的每個字母都只能用一次。返回詞彙表 words 中你掌握的所有單詞的 ...

LeetCode 1160 拼寫單詞

給你乙份 詞彙表 字串陣列 words 和一張 字母表 字串 chars。假如你可以用 chars 中的 字母 字元 拼寫出 words 中的某個 單詞 字串 那麼我們就認為你掌握了這個單詞。注意 每次拼寫時,chars 中的每個字母都只能用一次。返回詞彙表 words 中你掌握的所有單詞的 長度之...

LeetCode 1160 拼寫單詞

給你乙份 詞彙表 字串陣列 words 和一張 字母表 字串 chars。假如你可以用 chars 中的 字母 字元 拼寫出 words 中的某個 單詞 字串 那麼我們就認為你掌握了這個單詞。注意 每次拼寫時,chars 中的每個字母都只能用一次。返回詞彙表 words 中你掌握的所有單詞的 長度之...