알고리즘/프로그래머스
[프로그래머스] 옹알이(2) 문제풀이 JS
_hoji
2023. 7. 31. 12:04
정규표현식으로 이용하면 쉽게 풀수 있다.
옹알이는 aya, ye, woo, ma 중에 하나만 가능하고,
같은 말을 동시에 사용할 수 없다.
따라서 aya뒤에 aya가 안오는 aya와
ye뒤에 ye가 안오는 ye
woo뒤에 woo가 안오는 woo
ma뒤에 ma가 안오는 ma만 허용하는 정규표현식을 만들어서
이 정규 표현식이 매치될 경우만 answer를 증가하면 문제를 풀 수 있다.
* ?!와 같이 사용하면 바로뒤에 이 문자 아닐 때
?=와 같이 사용하면 바로뒤에 이 문자가 오는 경우만 골라낼 수 있다.
function solution(babbling) {
let answer = 0
const regex = /^(aya(?!aya)|ye(?!ye)|woo(?!woo)|ma(?!ma))+$/
for(const b of babbling){
if(b.match(regex)) answer++
}
return answer
}
https://school.programmers.co.kr/learn/courses/30/lessons/133499