본문 바로가기
프로그래머스/0단계

문자열 여러 번 뒤집기

by 긴가우딘 2025. 1. 21.

문제 설명

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

 


 

문제 읽으면서 생각 정리

  1. s부터 e까지 추출해서 뒤집기

 

문제 풀면서 정리

  1. substring써서 자르고 += 했더니 자른 구간만 나옴
  2. 왼, 가운데, 오른쪽으로 나눠서 가운데 부분만 추출하여 뒤집고 다시 연결함

 

class Solution {
    public String solution(String my_string, int[][] queries) {
        
        for(int[] query : queries) {
            String left = my_string.substring(0, query[0]);
            String middle = my_string.substring(query[0], query[1] + 1);
            String right = my_string.substring(query[1] + 1);

            StringBuffer sb = new StringBuffer(middle);        
            String reverse = sb.reverse().toString();
                        
            my_string = left + reverse + right;
        }
        
        return my_string;
    }
}

 

'프로그래머스 > 0단계' 카테고리의 다른 글

배열 만들기 5  (1) 2025.01.20
9로 나눈 나머지  (0) 2025.01.20
글자 이어 붙여 문자열 만들기  (0) 2025.01.14
간단한 논리 연산  (0) 2025.01.14
배열 만들기 4  (0) 2025.01.14