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

[백준 5555/javascript] 반지

by tokkiC 2022. 11. 2.

이전 c++ 과 비교할겸 가볍게 풀어보았다

전에 c++ 로 풀이할때는 find 로 찾았지만 정규표현식을 사용하니 훨씬 간단하였다

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

 

5555번: 반지

당신은 N개의 반지를 가지고 있다. 각각의 반지는 대문자 10 문자로 이루어진 문자열이 새겨져 있다. 반지는 문자열의 시작과 끝이 연결된 형태로 문자가 새겨져 있다. 반지에 각인된 문자열을

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 piece = inp.shift();
  inp.shift();
  let cnt = 0;
  let regexstr = new RegExp(`(${piece})`);
  for (el of inp) {
    let temp = el + el;
    let chk = regexstr.test(temp);
    if (chk) {
      cnt++;
    }
  }
  console.log(cnt);
};

댓글