[Programmers] Lv0 잘라서 배열로 저장하기 JAVA
2023. 1. 20. 22:40ㆍCS/자료구조 & 알고리즘
728x90
문제 출처
[프로그래머스 코딩 테스트 연습]
https://school.programmers.co.kr/learn/courses/30/lessons/120913
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제 풀이
- 배열의 총길이는 my_str의 길이에서 n을 나눈 것을 올림 처리를 하면 된다.
- 몫이 n개의 수가 있는 배열의 수가 나머지가 남은 문자열이다.
- 배열의 총 길이가 정해졌기 때문에 이에 각 배열에 적절히 잘라서 넣으면 된다.
- 이때 배열의 길이에 초과하여 접근하지 않게 마지막 인덱스에 접근을 할 때 배열의 길이에 초과하여 접근하지 않게 해 줘야 된다.
소스 코드
class Solution {
public String[] solution(String my_str, int n) {
int answer_max = (int) Math.ceil((double) my_str.length()/n);
String[] answer = new String[answer_max];
for (int i = 0; i < answer_max ; i++)
answer[i] = my_str.substring(i*n, (i == answer_max - 1) ? my_str.length() : i*n+n);
return answer;
}
}
728x90
'CS > 자료구조 & 알고리즘' 카테고리의 다른 글
[Programmers] Lv0 문자열 정리하기(2) JAVA (0) | 2023.01.20 |
---|---|
[Programmers] Lv0 7의 개수 JAVA (0) | 2023.01.20 |
[Programmers] Lv0 문자열 밀기 JAVA (0) | 2023.01.19 |
[Programmers] Lv0 종이 자르기 JAVA (0) | 2023.01.18 |
[Programmers] Lv0 연속된 수의 합 JAVA (0) | 2023.01.18 |