LeetCode 916 單詞子集 中等

2021-09-27 03:55:19 字數 1834 閱讀 3238

我們給出兩個單詞陣列 a 和 b。每個單詞都是一串小寫字母。

現在,如果 b 中的每個字母都出現在 a 中,包括重複出現的字母,那麼稱單詞 b 是單詞 a 的子集。 例如,「wrr」 是 「warrior」 的子集,但不是 「world」 的子集。

如果對 b 中的每乙個單詞 b,b 都是 a 的子集,那麼我們稱 a 中的單詞 a 是通用的。

你可以按任意順序以列表形式返回 a 中所有的通用單詞。

示例 1:

輸出:["facebook","google","leetcode"]

示例 2:

示例 3:

輸出:["facebook","google"]

示例 4:

輸出:["google","leetcode"]

示例 5:

輸出:["facebook","leetcode"]

1 <= a.length, b.length <= 10000

1 <= a[i].length, b[i].length <= 10

a[i] 和 b[i] 只由小寫字母組成。

a[i] 中所有的單詞都是獨一無二的,也就是說不存在 i != j 使得 a[i] == a[j]。

class solution:

def wordsubsets(self, a, b):

re =

a = 0

while a < len(a):

b = 0

while b < len(b):

bb_set = set(b[b])

for i, bb_str in enumerate(bb_set):

if a[a].count(bb_str) < b[b].count(bb_str):

i -= 1

break

if i == len(bb_set)-1:

b += 1

else:

break

if b == len(b):

a += 1

return re

暴力方法,b很大時超出時間限制

LeetCode 916 單詞子集

我們給出兩個單詞陣列a和b。每個單詞都是一串小寫字母。現在,如果b中的每個字母都出現在a中,包括重複出現的字母,那麼稱單詞b是單詞a的子集。例如,wrr 是 warrior 的子集,但不是 world 的子集。如果對b中的每乙個單詞b,b都是a的子集,那麼我們稱a中的單詞a是通用的。你可以按任意順序...

leetcode 916 單詞子集

我們給出兩個單詞陣列a和b。每個單詞都是一串小寫字母。現在,如果b中的每個字母都出現在a中,包括重複出現的字母,那麼稱單詞b是單詞a的子集。例如,wrr 是 warrior 的子集,但不是 world 的子集。如果對b中的每乙個單詞b,b都是a的子集,那麼我們稱a中的單詞a是通用的。你可以按任意順序...

LeetCode 916 單詞子集(計數)

我們給出兩個單詞陣列 a 和 b。每個單詞都是一串小寫字母。現在,如果 b 中的每個字母都出現在 a 中,包括重複出現的字母,那麼稱單詞 b 是單詞 a 的子集。例如,wrr 是 warrior 的子集,但不是 world 的子集。如果對 b 中的每乙個單詞b,b都是a 的子集,那麼我們稱 a 中的...