문제 설명
문자열 my_string과 정수 s, e가 매개변수로 주어질 때, my_string에서 인덱스 s부터 인덱스 e까지를 뒤집은 문자열을 return 하는 solution 함수를 작성해 주세요.
제한사항
my_string은 숫자와 알파벳으로만 이루어져 있습니다.
1 ≤ my_string의 길이 ≤ 1,000
0 ≤ s ≤ e < my_string의 길이
입출력 예
my_string s e result
"Progra21Sremm3" 6 12 "ProgrammerS123"
"Stanley1yelnatS" 4 10 "Stanley1yelnatS"
class Solution {
public String solution(String my_string, int s, int e) {
String answer = "";
char[] chars = my_string.toCharArray();
while(s<e) {
char temp = chars[s];
chars[s] = chars[e];
chars[e] = temp;
s++;
e--;
}
answer = new String(chars);
return answer;
}
}
gpt의 도움을 빌려 풀었다.
이런 거 혼자 바로 못 풀면 약간 자괴감이 든다.
class Solution {
public String solution(String my_string, int s, int e) {
StringBuilder answer = new StringBuilder(my_string.substring(s, e + 1));
answer.reverse();
return my_string.substring(0, s) + answer + my_string.substring(e + 1);
}
}
이 정도는 했어야 하는 거 아닌가...
'코딩테스트 연습' 카테고리의 다른 글
진료순서 정하기 (0) | 2024.04.20 |
---|---|
배열 만들기 5 (0) | 2024.04.19 |
글자 지우기 (0) | 2024.04.19 |
수열과 구간 쿼리 1 (0) | 2024.04.19 |
빈 배열에 추가, 삭제하기 (0) | 2024.04.19 |