코딩 테스트 풀이 🛠

[프로그래머스] 문자열 뒤집기

엄성준 2023. 8. 22. 22:00

문제 설명

문자열 my_string과 정수 s, e가 매개변수로 주어질 때, my_string에서 인덱스 s부터 인덱스 e까지를 뒤집은 문자열을 return 하는 solution 함수를 작성해 주세요.

 
제한사항
  • my_string은 숫자와 알파벳으로만 이루어져 있습니다.
  • 1 ≤ my_string의 길이 ≤ 1,000
  • 0 ≤ s ≤ e < my_string의 길이

 

입출력 예my_stringseresult
"Progra21Sremm3" 6 12 "ProgrammerS123"
"Stanley1yelnatS" 4 10 "Stanley1yelnatS"

 

나의 풀이

function solution(my_string, s, e) {
    let str ='' // 거꾸로 바꿀 문자열을 담을 변수
    for(let i=0; i<my_string.length; i++){
        if(s<=i && i<=e){ // my_string s와 e사이의 문자열을 str에 담음
            str+= my_string[i]
        }
    }
    const my_stringArr = my_string.split('') // my_string 문자를 split('')해서 배열로 만들어줌
    const reverseArr = str.split('').reverse().join('') // str을 split('')을 통해서 배열로 만든 뒤 reverse로 뒤집고 join('')으로 문자로 만듬
    
    my_stringArr.splice(s, e-s+1, reverseArr) // Array.splice()를 활용해서 s부터 시작해서 문자열을 e-s+1만큼 제거한 뒤 reverseArr 문자를 삽입해줌
    
    return my_stringArr.join('');
}