Cherry & Cherish
[JavaScript] 프로그래머스(Programmers) 옹알이(2) 본문
자바스크립트 알고리즘 연습을 위해, Python3으로 풀이 후 Javascript로 변환하는 과정을 기록하고 있습니다.
문제
머쓱이는 태어난 지 11개월 된 조카를 돌보고 있습니다. 조카는 아직 "aya", "ye", "woo", "ma" 네 가지 발음과 네 가지 발음을 조합해서 만들 수 있는 발음밖에 하지 못하고 연속해서 같은 발음을 하는 것을 어려워합니다. 문자열 배열 babbling이 매개변수로 주어질 때, 머쓱이의 조카가 발음할 수 있는 단어의 개수를 return하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ babbling의 길이 ≤ 100
- 1 ≤ babbling[i]의 길이 ≤ 30
- 문자열은 알파벳 소문자로만 이루어져 있습니다.
접근 :
일반 배열에 문제에서 준 옹알이 문자열을 넣어두고 2중 반복문으로 동일한 문자가 있는지 체크하는 방식으로 문제를 풀었다.
풀이(Python) :
def solution(babbling):
count = 0
babble = [ "aya", "ye", "woo", "ma" ]
for utter in babbling:
for text in babble:
if text * 2 not in utter:
utter = utter.replace(text, ' ')
if utter.strip() == '':
count += 1
return count
풀이(JavaScript) :
function solution(babbling) {
const can = ["aya", "ye", "woo", "ma"];
let count = 0;
for (let i = 0; i < babbling.length; i++) {
let babble = babbling[i];
for (let j = 0; j < can.length; j++) {
if (babble.includes(can[j].repeat(2))) {
break;
}
babble = babble.split(can[j]).join(" ");
}
if (babble.split(" ").join("").length === 0) {
count += 1;
}
}
return count;
}
'Algorithm > Programmers' 카테고리의 다른 글
[JavaScript] 프로그래머스(Programmers) 체육복 (0) | 2023.08.08 |
---|---|
[JavaScript] 프로그래머스(Programmers) 완주하지 못한 선수 (0) | 2023.08.08 |
[JavaScript] 프로그래머스(Programmers) 숫자 짝꿍 (0) | 2023.08.08 |
[JavaScript] 프로그래머스 (카카오 기출) 실패율 (0) | 2023.08.04 |
[JavaScript] 프로그래머스(Programmers) 덧칠하기 (0) | 2023.08.04 |
Comments