[백준] - 22233 가희와 키워드 (node.js)

밀루·2025년 2월 1일
1

BOJ

목록 보기
67/82

문제링크

코드

const { KeyObject } = require("crypto");
const fs = require("fs");
const filePath = process.platform === "linux" ? "/dev/stdin" : "./input.txt";
const arr = fs
  .readFileSync(filePath)
  .toString()
  .trim()
  .split("\n")
  .map((line) => line.replace("\r", ""));

const [n, m] = arr[0].split(" ").map(Number);

let keyword = new Map();
for (let i = 1; i <= n; i++) {
  keyword.set(arr[i], 1);
}

let answer = [];
for (let i = n + 1; i <= n + m; i++) {
  const letter = arr[i].split(",");
  for (const l of letter) {
    if (keyword.get(l)) {
      keyword.delete(l);
    }
  }
  answer.push(keyword.size);
}

console.log(answer.join("\n"));

Map을 사용해 시간복잡도를 줄이고 삭제로직도 편하게 구현했다.

profile
이밀루의 도전

1개의 댓글

comment-user-thumbnail
2025년 2월 1일

문제풀이 잘 보았습니다! 혹시 백준에서 푼 문제를 아카이빙하고 복습을 편하게 하고싶으시면 https://mycodingtest.com/ 서비스 한번 이용해보시길 추천드립니다. ㅎㅎ

답글 달기