옹알이(1) - 문제풀이

1. 문제


2. 초기의 생각

 

첫 나의 코드문제가 옹알이 인데.. 넘 어렵게 느껴지는 문제였다.. 중복되는 문자를 바꾸면 된다는 것은 생각은 했으나 어떤 방식으로 해결 해 나가야 하는 지 몰라 힘들게 느껴졌던 문제다.

 

 


3. 답

 

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

츄르사려고 코딩하는 코집사입니다. 1. [프로그래머스] 옹알이 (1) 자바(JAVA) 1) 문제 제목 : 옹알이 (1) 2) 문제 출처 https://school.programmers.co.kr/learn/courses/30/lessons/120956 프로그래머스 코드 중심의 개

yongku.tistory.com

 

코집사님의 문제 풀이로 문제를 풀어 나갔다. 여기서 내가 배웠던 점은 3번에 정리 하겠다. 

class Solution {
    public int solution(String[] babbling) {
       int answer = 0 ;
		
		String[] originalBabList = {"aya", "ye", "woo", "ma"};
		String[] repeatBabList = {"ayaaya", "yeye", "woowoo", "mama"};
		
		for(String bab : babbling) {
			for(String rBab : repeatBabList) {
				bab = bab.replace(rBab, "X");
			}
			for(String oBab : originalBabList) {
				bab = bab.replace(oBab, "?");
			}
			
			int sign = 0 ;
			
			for(int i = 0; i<bab.length(); i ++) {
				if(!bab.subSequence(i, i+1).equals("?")) {
					sign = 1;
					break;
				}
			}
			
			if(sign == 0) {
				answer++;
			}
		}
		
		return answer;
    }
}

 

 


4. 공부한 부분

- subSequence()

public CharSequence subSequence(int beginIndex, int endIndex)

배열의 안에 있는 문자열을 인자(beginIndex, endIndex) 넘버에 맞게 가져오는 메소드

 

결국은 해석은 bab.subSequence(0,1)에 "?"가 있으면 sign에 +1 을 해주어 해당 하는 문자가 몇개가 있는지 확인해주는 방법이다. 

'Programmers 문제풀이 > Lv.0' 카테고리의 다른 글

두 수의 차  (0) 2022.11.21
두 수의 곱  (0) 2022.11.21
몫 구하기  (0) 2022.11.21
나이 출력  (0) 2022.11.21
다음에 올 숫자  (0) 2022.11.21