두 개의 문자열 ransomNoteand 가 주어 magazine지면 trueif 는 and else ransomNote의 문자를 사용하여 생성할 수 있습니다 .magazinefalse
의 각 문자는 magazine에서 한 번만 사용할 수 있습니다 ransomNote.
class Solution {
public boolean canConstruct(String ransomNote, String magazine) {
Map<Character, Integer> charFrequency = new HashMap<>();
for (char c : magazine.toCharArray()) {
charFrequency.put(c, charFrequency.getOrDefault(c, 0) + 1);
}
for (char c : ransomNote.toCharArray()) {
if (!charFrequency.containsKey(c) || charFrequency.get(c) <= 0) {
return false;
}
charFrequency.put(c, charFrequency.get(c) - 1);
}
return true;
}
}