본문 바로가기

프로그래머스(Java)/Level 0

[프로그래머스] 옹알이 (1)

728x90

코드 힌트

  1. 문자열 배열 순회
    • 주어진 문자열 배열(babbling)의 각 문자열을 순회하여 처리합니다.
  2. 유효한 단어 탐색 및 제거
    • 아기가 옹알이를 할 수 있는 유효한 단어 배열을 생성하고, 각 문자열에서 이 단어들을 탐색합니다.
    • 문자열 내에 유효한 단어가 포함되어 있다면, replace() 메서드를 사용하여 그 단어를 빈칸(" ")으로 대체합니다.
  3. 유효한 문자열 확인
    • 각 문자열에서 모든 유효한 단어가 제거된 후, trim()을 사용하여 문자열이 빈칸으로만 이루어져 있는지 확인합니다.
    • 문자열이 빈칸으로만 이루어져 있다면, 유효한 발음으로 간주하고 카운트를 증가시킵니다.
  4. 최종 결과 반환
    • 모든 문자열을 처리한 후, 유효한 발음으로 구성된 문자열의 개수를 반환합니다.

 


정답은 더보기 클릭

더보기
class Solution {
    public int solution(String[] babbling) {
        int result = 0;  // 결과를 저장할 변수 초기화
        String[] validWords = {"aya", "ye", "woo", "ma"};  // 유효한 단어 리스트
        
        // 입력 배열 babbling의 각 문자열을 순회
        for (String babble : babbling) {
            // 유효한 단어들을 순회하면서 문자열에서 제거
            for (String word : validWords) {
                // 문자열에 유효한 단어가 포함되어 있으면
                if (babble.indexOf(word) > -1) {
                    // 유효한 단어를 빈칸으로 대체
                    babble = babble.replace(word, " ");
                }
            }
            // 모든 유효한 단어가 제거된 후, 문자열이 빈칸으로만 이루어져 있는지 확인
            if (babble.trim().length() == 0) {
                result++;  // 유효한 단어만 있는 경우 카운트 증가
            }
        }
        
        return result;  // 최종 결과 반환
    }
}
728x90