본문 바로가기
개발 노트/백준, 프로그래머스 풀이

[백준 14405/javascript] 피카츄

by tokkiC 2022. 9. 20.

정규표현식을 이용한 문제

주어진 문자열이 정규식에 맞는지를 확인하면 되는 간단한 문제이나...

처음에 정규식 중 not 에 해당하는 [^] 를 사용해서 풀려했더니 piika 를 정규식에 맞지 않는것이 없다고 오동작...

한참을 헤메다 그냥 처음부터 ^ 끝까지 $ 그룹화시킨 정규문자열을 | 로 넣어서

정규식의 test 메소드로 정규식에 맞는지를 확인하였더니 정상 동작하였다

https://www.acmicpc.net/problem/14405

 

14405번: 피카츄

피카츄는 "pi", "ka", "chu"를 발음할 수 있다. 따라서, 피카츄는 이 세 음절을 합친 단어만 발음할 수 있다. 예를 들면, "pikapi"와 "pikachu"가 있다. 문자열 S가 주어졌을 때, 피카츄가 발음할 수 있는 문

www.acmicpc.net

let input = [];

const readline = require("readline").createInterface({
  input: process.stdin,
  output: process.stdout,
});

readline.on("line", (line) => {
  input.push(line);
});

readline.on("close", () => {
  solution(input);
  process.exit();
});

const solution = (inp) => {
  let str = inp[0];
  let ans;
  let regex = /^(pi|ka|chu)*$/;
  if (regex.test(str)) {
    ans = "YES";
  } else {
    ans = "NO";
  }
  console.log(ans);
};

댓글