랄라

LV1 이상한 문자 만들기 - JAVA 본문

스터디/코딩 테스트(프로그래머스)

LV1 이상한 문자 만들기 - JAVA

devdaeun 2024. 12. 2. 10:40

코딩테스트 연습 - 이상한 문자 만들기 | 프로그래머스 스쿨

 

문제 설명
문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요.

제한 사항
문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다.
첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다.

class Solution {
    public String solution(String s) {
        String answer = "";
        int count = 0;
        String sub;
        for (int i=0; i<s.length(); i++){
            sub = s.substring(i,i+1);
            if (sub.equals(" ")){
                answer += " ";
                count = 0;
            }else{
                if (count % 2 == 0){
                    answer += sub.toUpperCase();
                    System.out.println(answer);
                    count++;
                }else{
                    answer += sub.toLowerCase();
                    count++;
                }
            }
        }
        return answer;
    }
}

 

앞에 공백이포함되는경우는 코드가 수행이 안되었는데 알고보니 equals()를 사용해서 비교를 해야하는데 

습관적으로 == 을 사용하였다.

고치고나니 모든 테스트케이스를 통과할 수 있었다.