728x90
반응형
SMALL

문제 설명

문자열 myString이 주어집니다. myString을 문자 "x"를 기준으로 나눴을 때 나눠진 문자열 각각의 길이를 순서대로 저장한 배열을 return 하는 solution 함수를 완성해 주세요.


제한사항

  • 1 ≤ myString의 길이 ≤ 100,000
    • myString은 알파벳 소문자로 이루어진 문자열입니다.

입출력 예

myString result

"oxooxoxxox" [1, 2, 1, 0, 1, 0]
"xabcxdefxghi" [0, 3, 3, 3]

입출력 예 설명

입출력 예 #1

  • "x"를 기준으로 문자열을 나누면 ["o", "oo", "o", "", "o", ""]가 됩니다. 각각의 길이로 배열을 만들면 [1, 2, 1, 0, 1, 0]입니다. 따라서 [1, 2, 1, 0, 1, 0]을 return 합니다.

입출력 예 #2

  • "x"를 기준으로 문자열을 나누면 ["", "abc", "def", "ghi"]가 됩니다. 각각의 길이로 배열을 만들면 [0, 3, 3, 3]입니다. 따라서 [0, 3, 3, 3]을 return 합니다.
package Lv0;

import java.util.ArrayList;
import java.util.List;

/*
문자열 myString이 주어집니다.
myString을 문자 "x"를 기준으로 나눴을 때 나눠진 문자열 각각의 길이를 순서대로 저장한 배열을 return 하는 solution 함수를 완성해 주세요.
 */
public class H181867 {
	public int[] solution(String myString) {
		List<Integer> lengths = new ArrayList<>();
		int count = 0;

		for (int i = 0; i < myString.length(); i++) {
			if (myString.charAt(i) == 'x') {
				lengths.add(count);
				count = 0;
			} else {
				count++;
			}
		}
		lengths.add(count);

		int[] result = new int[lengths.size()];
		for (int i = 0; i < lengths.size(); i++) {
			result[i] = lengths.get(i);
		}
		return result;
	}
}
728x90
반응형
LIST

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

접미사 배열  (0) 2023.05.05
특별한 이차원 배열 2  (0) 2023.05.05
세로 읽기  (1) 2023.05.04
간단한 논리 연산  (1) 2023.05.04
두 수의 연산값 비교하기  (0) 2023.05.04

+ Recent posts