728x90
반응형
SMALL
조카는 "aya", "ye", "woo", "ma" 네 가지 발음과 네 가지 발음을 조합해서 만들 수 있는 발음밖에 하지 못하고 연속해서 같은 발음을 하는 것을 어려워합니다.
조카가 발음할 수 있는 단어의 개수를 return 하시오....
먼저 연속해서 발음하는 ayaaya|yeye|woowoo|mama 를 모두 replaceAll 로 제외시켰다
그 다음 2중 for 문을 사용하고 그 안에 while 문을 사용하여
문자가 맞을 경우 "" 로 변경하고 answer++ 을 했는데 시간초과가 되어버린다!
class Solution {
public int solution(String[] babbling) {
String tell[] = {"aya", "ye", "woo", "ma"};
int answer = 0;
for(int i=0; i<babbling.length; i++){
babbling[i] = babbling[i].replaceAll("ayaaya|yeye|woowoo|mama", "");
}
for(int i=0; i<babbling.length; i++){
for(String t : tell){
// 문자가 맞을 경우 "" 변경
while(babbling[i].indexOf(t) < 0){
babbling[i].replaceFirst(t, "");
answer++;
}
}
}
return answer;
}
}
System.out.println 을 마구잡이로 찍어서 확인해보니 세상에
내가 문제를 잘못 읽었다....
"aya", "ye", "woo", "ma" 발음을 조합을 한 단어만 읽을 수 있다는 것!
다시 잘 비벼서 문제를 잘 해결했다 ㅎㅎ
정답
class Solution {
public int solution(String[] babbling) {
int answer = 0;
for(int i=0; i<babbling.length; i++){
babbling[i] = babbling[i].replaceAll("ayaaya|yeye|woowoo|mama", " ");
babbling[i] = babbling[i].replaceAll("aya|ye|woo|ma", "");
if(babbling[i].equals("")) answer++;
}
return answer;
}
}
출처
프로그래머스 - https://school.programmers.co.kr/learn/courses/30/lessons/133499#qna
728x90
반응형
LIST
'코딩 테스트' 카테고리의 다른 글
프로그래머스) 문자열 나누기 Lv1 (0) | 2024.02.16 |
---|---|
프로그래머스) 숫자 짝꿍 Lv1 (2) | 2024.02.15 |
프로그래머스) 햄버거 만들기 Lv1 (2) | 2024.02.14 |
프로그래머스) 달리기 경주 Lv1 (0) | 2024.02.12 |
코딩테스트 준비 (0) | 2024.02.11 |