문제 설명
두 정수 q, r과 문자열 code가 주어질 때, code의 각 인덱스를 q로 나누었을 때 나머지가 r인 위치의 문자를 앞에서부터 순서대로 이어 붙인 문자열을 return 하는 solution 함수를 작성해 주세요.
제한사항
- 0 <= r < q <= 20
- r < code의 길이 <= 1,000
- code는 영소문자로만 이루어져 있습니다.
입출력 예
q | r | code | result |
3 | 1 | "qjnwezgrpirldywt" | "jerry" |
1 | 0 | "programmers" | "programmers" |
import java.lang.StringBuilder;
class Solution {
public String solution(int q, int r, String code) {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < code.length(); i++) {
if (i % q == r) {
sb.append(code.charAt(i));
}
}
String answer = sb.toString();
return answer;
}
}
StringBuilder를 생성합니다. for문이 code의 길이만큼 순회합니다. 만약 i를 q로 나눈 나머지가 r일 때, append 메소드로 code의 i번째 문자를 sb에 추가합니다. answer에 sb를 할당합니다. sb를 반환하기 전, toString 메소드로 올바르게 출력할 수 있도록 합니다.
'프로그래머스 > Lv. 0(코딩 기초 트레이닝)' 카테고리의 다른 글
[프로그래머스 코딩테스트] 2의 영역(Java) (0) | 2023.05.07 |
---|---|
[프로그래머스 코딩테스트] 가까운 1 찾기(Java) (0) | 2023.05.07 |
[프로그래머스 코딩테스트] 문자열 뒤집기(Java) (0) | 2023.05.06 |
[프로그래머스 코딩테스트] 간단한 논리 연산(Java) (0) | 2023.05.06 |
[프로그래머스 코딩테스트] 콜라츠 수열 만들기(Java) (0) | 2023.05.06 |