반응형
문제 설명
문자열 my_string과 정수 배열 indices가 주어질 때, my_string에서 indices의 원소에 해당하는 인덱스의 글자를 지우고 이어 붙인 문자열을 return 하는 solution 함수를 작성해 주세요.
제한사항
1 ≤ indices의 길이 < my_string의 길이 ≤ 100
my_string은 영소문자로만 이루어져 있습니다
0 ≤ indices의 원소 < my_string의 길이
indices의 원소는 모두 서로 다릅니다.
입출력 예

입출력 예 설명
입출력 예 #1
예제 1번의 my_string의 인덱스가 잘 보이도록 표를 만들면 다음과 같습니다.

indices에 있는 인덱스의 글자들을 지우고 이어붙이면 "programmers"가 되므로 이를 return 합니다.
import java.util.*;
class Solution {
public String solution(String my_string, int[] indices) {
String answer = "";
StringBuilder sb = new StringBuilder(my_string);
Arrays.sort(indices);
for(int i = indices.length - 1; i >= 0; i--){
sb.deleteCharAt(indices[i]);
}
return sb.toString();
}
}
StringBuilder를 생성해 주고 indices[i]를 deleteCharAt()해주면 끝!
그리고 반복문 조건을 int i = indices.length - 1; i >= 0; i-- 이렇게 해준 이유는
int i=0; 이런 식으로 해줄 경우 인덱스가 삭제되면서
다음 조건을 수행할 때 오류가 생기기 때문이다!
반응형
'코딩테스트 > JAVA' 카테고리의 다른 글
| [JAVA/프로그래머스] 이어 붙인 수 (0) | 2023.07.03 |
|---|---|
| [JAVA/프로그래머스] rny_string (0) | 2023.07.02 |
| [JAVA/프로그래머스] 시저 암호 (0) | 2023.06.26 |
| [JAVA/프로그래머스] 커피 심부름 (0) | 2023.06.26 |
| [JAVA/프로그래머스] 7의 개수 (0) | 2023.06.25 |