[JAVA] 프로그래머스 : x 사이의 개수

조예빈·2024년 9월 1일
0

Coding Test

목록 보기
130/146
post-custom-banner

https://school.programmers.co.kr/learn/courses/30/lessons/181867

이 문제는 단순히 split("x")로만 풀어주면 정답이 아니다. 첫 번째 케이스에서 보면 알 수 있듯, 마지막에 빈 배열을 추가해 주어야 하기 때문이다.

myString.split("")

x를 기준으로 최대한 많은 문자열 분리. 모든 x에 대한 문자열 분리 -> 빈 문자열이 배열의 마지막에 추가되지 않음

myString.split("", myString.length())

split 메소드는 최대 limit개의 배열 요소를 반환 -> 마지막 요소는 나머지 문자열 포함
ex)myString = "axbxcxd"일 때, myString.length()는 7 -> x를 기준으로 분리한 뒤 배열의 뒤에 추가적으로 빈 문자열 포함

class Solution {
    public int[] solution(String myString) {
        String[] input = myString.split("x",myString.length());
        int[] answer = new int[input.length];
        for(int i=0; i<input.length; i++){
            System.out.println(input[i]);
            answer[i] = input[i].length();
        }
        return answer;
    }
}

profile
컴퓨터가 이해하는 코드는 바보도 작성할 수 있다. 사람이 이해하도록 작성하는 프로그래머가 진정한 실력자다. -마틴 파울러
post-custom-banner

0개의 댓글