[프로그래머스-자바스크립트] 문자 반복 출력

차슈·2024년 4월 12일
0

프로그래머스

목록 보기
15/64
post-thumbnail
post-custom-banner

문제

문자열 my_string과 정수 n이 매개변수로 주어질 때, my_string에 들어있는 각 문자를 n만큼 반복한 문자열을 return 하도록 solution 함수를 완성해보세요


입출력 예시

입출력 예 #1

"hello"의 각 문자를 세 번씩 반복한 "hhheeellllllooo"를 return 합니다.


풀이

function solution(my_string, n) {
    var answer = '';
    for(let i = 0; i<my_string.length; i++)
        {
            for(let j = 0; j<n; j++)
                {
                    answer+=my_string[i]
                }
        }
    return answer;
}

반복이라는 말이 나왔기때문에 반복문을 써야할거같아서 바로 for문을 사용했다. 그리고 해당 요소만큼 n을 돌린 풀이이다.

다른 사람 풀이

function solution(my_string, n) {
    let ans = '';
    for (let s of my_string) 
      ans+=s.repeat(n);
    return ans;
}

좀 더 간단하게 풀 수 있는 방법이 있을거라고 생각해서 봤는데, 앞서 풀었던 for of를 사용하고, repeat 메서드를 이용해서 반복을 해준 코드

function solution(my_string, n) {
    return my_string.split('').reduce((acc, cur) => acc + cur.repeat(n), '')
}

split를 사용해서 my_string을 배열로 바꿔 준 다음, reduce 함수를 통해서 다음에 올 요소를 repeat 함수로 n 만큼 반복시켜서 합쳐주면서 풀어주는 코드

post-custom-banner

0개의 댓글