Leetcode/Top Interview 150
[Hashmap][Easy] 383. Ransom Note
자전거통학
2024. 5. 4. 23:01
https://leetcode.com/problems/ransom-note/description
Q. 주어진 두개의 문자열 ransomNote와 magazine이 있다. magazine의 단어로 ransomNote의 문장을 구성할 수 있는지 여부를 반환하라.
Solution.
hash 류의 간단한 문제.
public bool CanConstruct(string ransomNote, string magazine)
{
Dictionary<char, int> dictFreq = new Dictionary<char, int>();
for(int q = 0; q < magazine.Length; ++q)
{
char cur = magazine[q];
if(dictFreq.ContainsKey(cur))
++dictFreq[cur];
else
dictFreq.Add(cur, 1);
}
for(int q = 0; q < ransomNote.Length; ++q)
{
char cur = ransomNote[q];
if(!dictFreq.ContainsKey(cur))
return false;
--dictFreq[cur];
if(dictFreq[cur] == 0)
dictFreq.Remove(cur);
}
return true;
}
결과.