min
프로그래머스 옹알이(2) 자바스크립트 본문
<문제>
https://school.programmers.co.kr/learn/courses/30/lessons/133499#
<나의 풀이>
//babbling의 길이 만큼 반복문을 돌면서 다음 과정을 수행한다.
//[aya , ye , woo , ma] 만큼 돌면서 다음 과정을 수행한다.
//만약에 babbling의 원소중에 위 리스트의 원소가 포함되어 있으면 해당 원소를 지운다.
//반복문을 다 돌고 나서 babbing의 원소가 다 비었다면 answer를 추가한다.
//answer를 리턴한다.
function solution(babbling) {
var answer = 0;
for(let i = 0; i < babbling.length; i++) {
babbling[i] = babbling[i].replace(/(ayaaya|yeye|mama|woowoo)/g , " ")
babbling[i] = babbling[i].replace(/(aya|ye|ma|woo)/g , "")
if(babbling[i] === "") answer ++;
}
return answer;
}
<다른 사람의 풀이>
function solution(babbling) {
const regexp1 = /(aya|ye|woo|ma)\1+/;
const regexp2 = /^(aya|ye|woo|ma)+$/;
return babbling.reduce((ans, word) => (
!regexp1.test(word) && regexp2.test(word) ? ++ans : ans
), 0);
}
<참고 자료>
정규표현식
https://developer.mozilla.org/ko/docs/Web/JavaScript/Guide/Regular_expressions
'알고리즘' 카테고리의 다른 글
프로그래머스 문자열 나누기 자바스크립트 (0) | 2023.08.25 |
---|---|
프로그래머스 숫자 짝꿍 자바스크립트 (0) | 2023.08.24 |
프로그래머스 다트 게임 자바스크립트 (0) | 2023.08.22 |
프로그래머스 덧칠하기 자바스크립트 (0) | 2023.08.21 |
프로그래머스 카드뭉치 자바스크립트 (0) | 2023.08.20 |