Re: [閒聊] 每日leetcode

作者: oin1104 (是oin的說)   2025-01-10 17:31:49
題目
找words1 裡面有幾個字串是好的
好的 = 出現的字母比words2 每一個string裡面出現的字母還要多
思路
先找words2每個字母出現最多次的次數
這一定是word1 分別字母 至少要出現的次數
就好了
class Solution {
public:
vector<string> wordSubsets(vector<string>& words1, vector<string>& words2)
{
int n = words1.size();
vector<string> res ;
vector<int> save(26,0);
for(string k : words2)
{
vector<int> tmp(26,0);
for(char i : k)
{
tmp[i-'a'] ++;
}
for(int i = 0 ; i < 26 ; i ++)
{
save[i] = max(save[i] , tmp[i]);
}
}
for(string k : words1)
{
vector<int> tmp(26,0);
for(char i : k)
{
tmp[i-'a'] ++;
}
int ok = 1;
for(int i = 0 ; i < 26 ; i ++)
{
if(save[i] > tmp[i])
{
ok = 0;
continue;
}
}
if(ok) res.push_back(k);
}
return res;
}
};
作者: Firstshadow (IamCatづミ'_'ミづ)   2025-01-10 17:34:00
大師
作者: Meaverzt (Meaverzt)   2025-01-10 17:36:00
大師剩我一個一個找了

Links booklink

Contact Us: admin [ a t ] ucptt.com