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

[백준 19844/javascript] 단어 개수 세기

by tokkiC 2022. 9. 21.

주어진 문자열을 주어진 조건대로 수정 후 정규표현식 조건에 맞는지 묻는 문제이다

상당히 시간을 날렸는데... 이유는

1. 문제의 조건을 잘 이해를 못해서

2. 문제가 이해가 안가니 정규표현식을 다르게(엄척 복잡하게) 해서 해결하려고 했기 때문

3. 이 문제는 정규표현식이 아니라 구현?(문제의 조건을 이해하는 독해력...) 문제다

역시 코테는 자고일어나서 풀면 금방 풀린다 에휴

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

 

19844번: 단어 개수 세기

첫째 줄에 “문장”을 나타내는 문자열이 주어진다. 이 문자열은 영어 소문자, 띄어쓰기, -(하이픈), '(어포스트로피)로만 이루어져 있다. 이때 띄어쓰기, 하이픈, 어포스트로피 중 어느 것도 인

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 hyped = str.replace(/-/g, " ");
  let spaced = hyped.split(" ");
  let cnt = spaced.length;
  let regex = /^(c|j|n|m|t|s|l|d|qu)'(a|e|i|o|u|h)/;
  for (el of spaced) {
    if (regex.test(el)) {
      cnt++;
    }
  }
  console.log(cnt);
};

댓글