😎풀이

  1. 모음 저장
  2. sentence를 단어 별로 분리
  3. 순회하며 다음 규칙 적용
    3-1. 자음으로 시작한다면 첫 문자를 마지막 문자 뒤에 붙임
    3-2. ma를 문자 뒤에 붙임
    3-3. a를 순회한 수 만큼 추가로 붙임
  4. 규칙이 적용된 단어들을 공백으로 이어붙임
  5. 결과 문자열 반환
function toGoatLatin(sentence: string): string {
    const splittedSentence = sentence.split(' ')
    const goatLatin = []
    const vowelSet = new Set('aeiouAEIOU')
    for(let i = 0; i < splittedSentence.length; i++) {
        let curStr = splittedSentence[i]
        const firstLetter = curStr[0]
        const isVowel = vowelSet.has(firstLetter)
        if(!isVowel) curStr = curStr.slice(1) + firstLetter 
        curStr += 'ma'
        curStr += 'a'.repeat(i + 1)
        goatLatin.push(curStr)
    }
    return goatLatin.join(' ')
};
profile
내 지식을 공유할 수 있는 대담함

0개의 댓글