728x90
반응형
SMALL

문제 설명

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


제한사항

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

입출력 예

my_str n result

"abc1Addfggg4556b" 6 ["abc1Ad", "dfggg4", "556b"]
"abcdef123" 3 ["abc", "def", "123"]

입출력 예 설명

입출력 예 #1

  • "abc1Addfggg4556b" 를 길이 6씩 잘라 배열에 저장한 ["abc1Ad", "dfggg4", "556b"]를 return해야 합니다.

입출력 예 #2

  • "abcdef123" 를 길이 3씩 잘라 배열에 저장한 ["abc", "def", "123"]를 return해야 합니다.

유의사항

  • 입출력 예 #1의 경우 "abc1Addfggg4556b"를 길이 6씩 자르면 "abc1Ad", "dfggg4" 두개와 마지막 "556b"가 남습니다. 이런 경우 남은 문자열을 그대로 배열에 저장합니다.

  • 총 몇개의 문자로 쪼개지는지? n개마다 str가 나옴, str + n 정해서 쪼개기! 17글자 6개씩 쪼개기 6개, 6개, 5개로 쪼개짐 6글자가 나오지 않으면 나머지값으로 하기
package Lv0;

public class H120913 {
	public static String[] solution(String my_str, int n) {
		int cnt = (my_str.length() + n -1 ) / n;
		String[] answer = new String[cnt];
		System.out.println(cnt);
		

		for (int i = 0; i < cnt; i++) {
			int start = i * n;
			int end = 0;

			if (start + n >= my_str.length()) {
				end = my_str.length();
			} else {
				end = start + n;
			}
			answer[i] =my_str.substring(start, end);
		}
		return answer;
	}
	public static void main(String[] args) {
		String my_str = "abc1Addfggg4556b";
		int n = 6;
		System.out.println(solution(my_str, n));
	}
}
728x90
반응형
LIST

'알고리즘 > 프로그래머스 JAVA LV.0' 카테고리의 다른 글

외계인 사전  (0) 2023.03.20
숨어있는 숫자의 덧셈 (2)  (0) 2023.03.19
문자열 밀기  (0) 2023.03.17
k의 개수  (0) 2023.03.16
유한소수 판별하기  (0) 2023.03.15

+ Recent posts