383. Ransom Note
💡풀이
/**
* @param {string} ransomNote
* @param {string} magazine
* @return {boolean}
*/
var canConstruct = function (ransomNote, magazine) {
let obj = {};
for (let i of magazine) {
if (!obj[i]) obj[i] = 0;
obj[i]++;
}
console.log(obj);
for (let k of ransomNote) {
if (!obj[k]) return false;
obj[k]--;
}
return true;
};
// 다른 사람의 풀이
var canConstruct = function (ransomNote, magazine) {
const noteArr = ransomNote.split('');
const magazineArr = magazine.split('');
for (let i = 0; i < noteArr.length; i++) {
if (magazineArr.includes(noteArr[i])) {
const index = magazineArr.indexOf(noteArr[i]);
magazineArr.splice(index, 1);
} else {
return false;
}
}
return true;
};
let ransomNote = 'aabb';
let magazine = 'aabbc';
canConstruct(ransomNote, magazine);
📝정리
- Hash를 사용하여 풀었다. 크게 어렵게 풀진 않았다.
문제 링크
https://leetcode.com/problems/ransom-note/
LeetCode GitHub
https://github.com/tTab1204/LeetCode/tree/main/%EC%A3%BC%EC%98%81
Author And Source
이 문제에 관하여(383. Ransom Note), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@ken1204/383.-Ransom-Note저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)