Algorithm/Algorithm Practice

[프로그래머스] 위클리챌린지_5주차_모음사전

GrapeMilk 2021. 9. 16. 08:46

문제링크

( https://programmers.co.kr/learn/courses/30/lessons/84512 )

분류 

 - Recurstion

1. 풀이 힌트

 - 만들 수 있는 모든 단어를 재귀를 이용하여 만든다.

 - 만든 배열에서 target의 index를 구한다.

2. 코드 풀이

function solution(word) {
    const vowels =["A", "E", "I", "O", "U"];
    const wordArr = [];
    const makeWordArr = (ongoingWord) => {
        if (ongoingWord.length === 5) {
            return
        }
        
        for (let i = 0; i < 5; i++) {
            const curWord = ongoingWord + vowels[i]
            wordArr.push(curWord)
            makeWordArr(curWord)
        }
    }

    makeWordArr("")
    return wordArr.indexOf(word) + 1;
    
}