我們給出兩個單詞陣列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]
。
先統計b**現的公共字母字典mp,然後遍歷a中的每乙個單詞,如果某個單詞滿足mp,則加入ans。
vectorwordsubsets(vector& a, vector& b)
for(int i=0;ifirst) < it->second) break;
}if(it == mp.end()) ans.push_back(a[i]);
}return ans;
}};
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 中的...
LeetCode 916 單詞子集 中等
我們給出兩個單詞陣列 a 和 b。每個單詞都是一串小寫字母。現在,如果 b 中的每個字母都出現在 a 中,包括重複出現的字母,那麼稱單詞 b 是單詞 a 的子集。例如,wrr 是 warrior 的子集,但不是 world 的子集。如果對 b 中的每乙個單詞 b,b 都是 a 的子集,那麼我們稱 a...