0
点赞
收藏
分享

微信扫一扫

【力扣·每日一题】383. 赎金信 (模拟)


​​linkk​​

【力扣·每日一题】383. 赎金信 (模拟)_散列表


用数组记录magazine中每个字母出现的次数,再去比对ransomNote中的每个字母,每次让该字母的出现次数减一,表示可用的字母次数。如果碰到某字母的可用次数即为不合法情况

class Solution {
public:
bool canConstruct(string ransomNote, string magazine) {
int mp[27];
memset(mp,0,sizeof mp);
bool flag=true;
for(int i=0;magazine[i];i++) mp[magazine[i]-'a']++;
for(int i=0;ransomNote[i];i++){
if(mp[ransomNote[i]-'a']<=0){
return false;
}
mp[ransomNote[i]-'a']--;
}
return true;
}
};


举报

相关推荐

0 条评论