본문 바로가기
개발 노트/LeetCode 풀이

[JS] 383. Ransom Note

by tokkiC 2022. 11. 18.

해시맵을 사용한 문제

처음에는 두 해시맵을 JSON.stringify 로 문자열로 만들어 같은지를 비교하려 하였으나, 객체의 순서가 다를 수 있으므로 그냥 적은 쪽의 문자를 객체에서 하나씩 빼어 해결하였다

체감 난이도 백준 5

https://leetcode.com/problems/ransom-note/

 

Ransom Note - LeetCode

Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.

leetcode.com

var canConstruct = function (ransomNote, magazine) {
  const magoj = {};

  for (let i = 0; i < magazine.length; i++) {
    if (magoj[magazine[i]]) {
      magoj[magazine[i]]++;
    } else {
      magoj[magazine[i]] = 1;
    }
  }

  for (let i = 0; i < ransomNote.length; i++) {
    if (magoj[ransomNote[i]]) {
      magoj[ransomNote[i]]--;
      if (magoj[ransomNote[i]] < 0) {
        return false;
      }
    } else {
      return false;
    }
  }

  return true;
};

'개발 노트 > LeetCode 풀이' 카테고리의 다른 글

[JS] 9. Palindrome Number  (0) 2022.11.22
[JS] 1. Two Sum  (0) 2022.11.22
[JS] 1342. Number of Steps to Reduce a Number to Zero  (0) 2022.11.18
[JS] 412. Fizz Buzz  (0) 2022.11.16
[JS] 1672. Richest Customer Wealth  (0) 2022.11.16

댓글