자료구조&알고리즘/프로그래머스
프로그래머스 - 옹알이(2) [JAVA]
yong_ღ'ᴗ'ღ
2023. 11. 14. 17:11
https://school.programmers.co.kr/learn/courses/30/lessons/133499
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
접근방식)
1. "aya", "ye", "woo", "ma" 연속해서 있으면 발음하지 못하므로, 문자열 중 ayaaya 처럼 연속된게 있으면 다음 걸로 넘어간다.(continue)
2. 해당 문자열에서 발음할 수 있는 단어가 있다면 replaceAll()을 사용하여 공백으로 바꿔준다.
3. 그 문자열의 공백들을 없애준다. (→ replaceAll(" ", ""))
4. 위의 처리를 끝낸 해당 문자열이 비어있다면, 머쓱이의 조카가 발음할 수 있는 단어이므로, answer++ 해준다.
class Solution {
public int solution(String[] babbling) {
int answer = 0;
String[] speaking = {"aya", "ye", "woo", "ma"};
for (int i = 0; i < babbling.length; i++) {
if (babbling[i].contains("ayaaya") || babbling[i].contains("yeye") || babbling[i].contains("woowoo") || babbling[i].contains("mama"))
continue;
for (int j = 0; j < speaking.length; j++) {
babbling[i] = babbling[i].replaceAll(speaking[j], " ");
}
babbling[i] = babbling[i].replaceAll(" ", "");
if (babbling[i].isEmpty())
answer++;
}
return answer;
}
}