728x90
반응형
문제 설명
머쓱이는 태어난 지 6개월 된 조카를 돌보고 있습니다. 조카는 아직 "aya", "ye", "woo","ma" 네 가지 발음을 최대 한 번씩 사용해 조합한(이어붙인) 발음 밖에 하지 못 합니다. 문자열 배열 babbling이 매개변수로 주어질 때, 머쓱이의 조카가 발음할 수 있는 단어의 개수를 return하도록 solution 함수를 완성해주세요.
입출력 예
babbling = ["aya", "yee", "u", "maa", "wyeoo"]
result = 1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
class Solution {
public int solution(String[] babbling) {
int answer = 0;
for(int i = 0; i < babbling.length; i++) {
babbling[i] = babbling[i].replaceFirst("aya", "0");
babbling[i] = babbling[i].replaceFirst("woo", "0");
babbling[i] = babbling[i].replaceFirst("ye", "0");
babbling[i] = babbling[i].replaceFirst("ma", "0");
babbling[i] = babbling[i].replace("0", "");
if(babbling[i].equals("")) answer++;
}
return answer;
}
}
|
cs |
코드에 쓰인 메소드 replaceFirst( A, B ) : 문자열의 처음 발견된 A를 B로 치환한다.
코드 설명 : 각 문자열 안에서 조카가 발음할 수 있는 단어들의 조합도 (ex: ayama = aya + ma로 1개로 셈) 갯수 1로 치기 때문에
replaceFirst로 조카가 발음할 수 있는 단어들을 0으로 치환 후 마지막에 0을 "" 공백으로 치환함으로써 조합의 경우 또한 확인할 수 있음.
예시 : ayamaa는 replaceFirst("aya", "0") 와 replaceFirst("ma", "0")로 둘 다 "00"이 된다.
이는 나중에 공백으로 변경되어 answer++로 갯수가 세어진다.
유의사항에도 나와있듯이 "woowo"는 replaceFirst("woo", "0")로 0이 되지만 뒤에 wo는 0으로 치환되지 않기에 answer가 되지 못 ㄹ한다.
출처 : 프로그래머스
728x90
반응형
'코테 문제 풀이 > 프로그래머스' 카테고리의 다른 글
프로그래머스 - 평균 구하기 Java (0) | 2024.08.08 |
---|---|
프로그래머스 - 짝수와 홀수 Java (0) | 2024.08.08 |
프로그래머스 - K번째 수 JAVA (0) | 2021.04.01 |
프로그래머스 - 모의고사 JAVA (0) | 2021.03.31 |
프로그래머스 - 신규 아이디 추천 JAVA (0) | 2021.03.30 |