본문 바로가기

프로그래머스(Java)/Level 0

[프로그래머스] 잘라서 배열로 저장하기

728x90

코드 힌트

  1. 배열 크기 계산
    문자열의 길이와 주어진 크기 n을 이용해 결과 배열의 크기를 결정합니다. 문자열의 길이를 n으로 나눈 값을 기준으로 배열 크기를 결정합니다. 나머지가 있는 경우, 배열 크기는 하나 더 추가합니다.
  2. 문자열을 잘라서 배열에 저장
    문자열을 n 길이로 잘라서 배열에 저장합니다. 문자열의 길이보다 남은 부분이 짧을 수 있으므로, 마지막 조각은 남은 모든 문자열을 포함합니다.
  3. 결과 배열 반환
    잘라진 문자열 조각들을 배열에 저장한 후, 배열을 반환합니다.

 

 

 


정답은 더보기 클릭

더보기
class Solution {
    public String[] solution(String my_str, int n) {
        // 문자열을 n 길이의 조각으로 나누기 위해 결과 배열의 크기 결정
        // 문자열 길이를 n으로 나눈 몫과 나머지에 따라 배열 크기 설정
        String[] result;
        if (my_str.length() % n == 0) {
            result = new String[my_str.length() / n];
        } else {
            result = new String[my_str.length() / n + 1];
        }
        
        // 결과 배열에 문자열 조각들을 저장
        int index = 0;
        for (int i = 0; i < my_str.length(); i += n) {
            // 현재 인덱스 i에서 n 길이의 문자열 조각을 추출하여 배열에 저장
            // 만약 마지막 조각이 문자열의 끝을 넘지 않는다면
            // 마지막 조각의 길이는 n보다 짧을 수 있으므로 문자열의 끝까지 잘라서 저장
            if (i + n < my_str.length()) {
                result[index++] = my_str.substring(i, i + n);
            } else {
                result[index++] = my_str.substring(i, my_str.length());
            }
        }
        
        // 조각들이 저장된 결과 배열을 반환
        return result;
    }
}
728x90