reduce()
includes()
, repeat()
replaceAll()
replaceAll()
function solution(babbling) {
const ables = ['aya', 'ye', 'woo', 'ma'];
return babbling.reduce((result, e) => {
for (let i = 0; i < ables.length; ++i) {
if (e.includes(ables[i].repeat(2))) return result;
}
for (let i = 0; i < ables.length; ++i) {
e = e.replaceAll(ables[i], ' ');
}
if (e.replaceAll(' ', '')) return result;
return result + 1;
}, 0);
}
발음할 수 있어도 반복이 되면 세면 안 된다는 예외를 염두해두어야 했다.
통과를 하고도 코드가 마음에 들지 않아 고치느라 시간이 오래 걸린 문제쓰...