옹알

2023. 11. 7. 08:38카테고리 없음

 

"aya","ye","woo","ma" 4가지 발음만 가능

각 문자열에서 각각 최대 한번씩만 등장.

매개변수 babbling이 주어지고

발음 개수를 return

 

function solution(babbling) {
    var answer = 0;
    return answer;
}

 

위 발음의 중복 제외한 모든 경우의 수를 구하고 그 값을 배열로 만들고

매개변수 bablling과 일치하는 지를 비교 하면

1차적으로 걸러지고

그 리턴 값에서 

위 4가지 발음 aya , ye , woo ,ma 가 각 1번 씩 포함되어 있는지 필터링 여기서 막히는데

 

 

1시간 30분동안 생각해봐도 모르겠습니다 

이렇게나 멍청하다니 .....

 

다른 사람 풀이를 봐도 모르겠는데?

regex의 괴상한 기호는 뭐고...

상수에 new 및 has... 생성자도....

재밌다 모르는게 계속 생기니 ㅋㅋ

찾아봐야지.

 

 

 

다른 사람의 문제 풀이 

function solution(babbling) {
  var answer = 0;
  const regex = /^(aya|ye|woo|ma)+$/;

  babbling.forEach(word => {
    if (regex.test(word)) answer++;  
  })

  return answer;
}

 

 

function solution(babbling) {
    const wordSet = new Set(["aya", "ye", "woo", "ma"])
    let result = 0;

    for(const word of babbling) {
        let remainWord = '';
        let prevWord = '';
        for(const char of word) {
            remainWord += char;
            if(wordSet.has(remainWord)) {
                if(remainWord === prevWord) break;
                prevWord = remainWord
                remainWord = ''
            }
        }
        if(remainWord === '') result++
    }
    return result;
}