문제 설명

문자열 my_string과 이차원 정수 배열 queries가 매개변수로 주어집니다. queries의 원소는 [s, e] 형태로, my_string의 인덱스 s부터 인덱스 e까지를 뒤집으라는 의미입니다. my_stringqueries의 명령을 순서대로 처리한 후의 문자열을 return 하는 solution 함수를 작성해 주세요.

제한사항

  • my_string은 영소문자로만 이루어져 있습니다.
  • 1 ≤ my_string의 길이 ≤ 1,000
  • queries의 원소는 [s, e]의 형태로 0 ≤ s ≤ e < my_string의 길이를 만족합니다.
  • 1 ≤ queries의 길이 ≤ 1,000

입출력 예

my_stringqueriesresult
"rermgorpsam"[[2, 3], [0, 7], [5, 9], [6, 10]]"programmers"

풀이

function solution(my_string, queries) {
    var answer = my_string.split("");
    let prevResult = my_string;
    
    queries.forEach((el) => {
        const [s, e] = el;
        let temp = e;
        for(let i = s; i <= e; i++){
            if(temp >= s){
                answer[i] = prevResult[temp] ;
            }
            temp--;
        }
        prevResult = answer.join("");
    })
    answer = answer.join("");
    return answer;
}

느낀 점

뒤집은 값을 계속해서 뒤집어야 하는데, 최초에 사용한 my_string으로 계속해서 뒤집고 있었다.. 이런 잔실수를 줄여야 할 것같다.

profile
개인 이력, 포폴 관리 및 기술 블로그 사이트 👉 https://aimzero-web.vercel.app/

0개의 댓글