2023년 7월 1일 토요일

[JAVA/프로그래머스]코딩테스트 배열로 저장하기

문자열 my_str과 n이 매개변수로 주어질 때, my_str을 길이 n씩 잘라서 저장한 배열을 return하도록 solution 함수를 완성해주세요.


문제 설명

문자열 my_str과 n이 매개변수로 주어질 때, my_str을 길이 n씩 잘라서 저장한 배열을 return하도록 solution 함수를 완성해주세요.




제한사항

  • 1 ≤ my_str의 길이 ≤ 100
  • 1 ≤ n ≤ my_str의 길이
  • my_str은 알파벳 소문자, 대문자, 숫자로 이루어져 있습니다.




JAVA 코딩테스트 잘라서 배열로 저장하기 코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import java.util.ArrayList;
 
class Solution {
    public String[] solution(String my_str, int n) {
        int len = my_str.length();
        int numSubstrings = (int) Math.ceil((double) len / n); // 잘린 문자열의 개수 계산
 
        ArrayList<String> substrings = new ArrayList<>(); // 결과를 저장할 ArrayList 생성
 
        // 문자열을 n씩 잘라서 저장하는 과정
        for (int i = 0; i < numSubstrings; i++) {
            int start = i * n; // 시작 인덱스
            int end = Math.min(start + n, len); // 끝 인덱스 (범위를 넘어가면 문자열 끝까지만 자르도록 함)
            substrings.add(my_str.substring(start, end)); // 잘라낸 문자열을 ArrayList에 추가
        }
 
        String[] answer = substrings.toArray(new String[0]); // ArrayList를 배열로 변환하여 반환
 
        return answer;
    }
}
cs


위 코드는 주어진 문자열 my_str을 길이 n씩 잘라서 저장하는 함수입니다. Math.ceil 함수를 사용하여 문자열을 잘랐을 때 생기는 잘린 문자열의 개수를 계산하고, ArrayList를 사용하여 잘린 문자열을 저장합니다. 마지막으로 ArrayList를 배열로 변환하여 반환합니다.

댓글 없음:

댓글 쓰기

Java Record: 간결하고 불변성을 가진 데이터 클래스를 만들기 위한 기능

Java 14부터 도입된 Record는 Java 프로그래밍에서 데이터 클래스를 간결하게 정의하고, 불변성을 가진 객체를 생성하는 데 도움을 주는 기능입니다. 이 블로그에서는 Java의 Record에 대해 소개하고, Record의 기능과 활용 방법에 대...