[백준1316_자바스크립트(javascript)] - 그룹 단어 체커

경이·2025년 5월 7일

𝑩𝑶𝑱 (𝒋𝒔)

목록 보기
303/325

🔴 문제

그룹 단어 체커


🟡 Sol

const fs = require('fs');
const path = process.platform === 'linux' ? '/dev/stdin' : 'input.txt';
const input = fs.readFileSync(path).toString().trim().split('\n');

let ans = 0;

const isGroupWord = (word) => {
  const charSet = new Set();
  let prevChar = '';

  for (const w of word) {
    if (charSet.has(w) && prevChar !== w) return false;
    if (!charSet.has(w)) {
      prevChar = w;
      charSet.add(w);
    }
  }

  return true;
};

for (let i = 1; i < input.length; i++) {
  if (isGroupWord(input[i])) ans += 1;
}
console.log(ans);

🟢 풀이

⏰ 소요한 시간 : -

단어들이 그룹 단어인지 체크해주면 되는 단순한 구현 문제다.

각 문자가 그룹 단어인지 체크하는 함수를 하나 만들어줬다.
각 알파벳은 그룹화 되어 한번 나와야 한다.
이를 판별하기 위한 set을 하나 만들어 줬다.
알파벳을 순회했을 때, 올바른 그룹 단어라면 이전 단어와 현재 단어가 같거나 혹은 한번만 등장한 단어여야 한다. 이 조건에 부합하지 않는다면 false를 리턴한다.
false를 리턴하지 않았다면 이전알파벳을 업데이트 해주고 set에 알파벳을 추가해주면 된다.


🔵 Ref

profile
록타르오가르

0개의 댓글