티스토리 뷰

프로그래머스 12930번 - 이상한 문자 만들기

프로그래머스 12903번 - https://programmers.co.kr/learn/courses/30/lessons/12930

 

요구사항

1. 문자열 s를 구성하는 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열 반환하라.

 

요구사항 분석 및  풀이과정

1. 각 단어의 구분은 공백(' ') 문자로 한다. 

2. 각 단어의 시작 문자의 인덱스를 기준으로 짝수와 홀수를 구분한다. (0은 짝수로 본다.)

3. 각 단어의 시작 문자의 인덱스가 짝수인 경우 대문자로 변경하고, 홀수인 경우 소문자로 변경한다.

4. 각 단어마다 시작 인덱스(start)를 0으로 잡아야 하기 때문에 공백(' ') 문자를 만날 경우 시작 인덱스를 0으로 초기화시켜준다.

4. 위의 작업을 문자열을 구성하는 모든 문자에 대해서 수행하여 준다.

 

소스코드 작성

class Solution {
    
    public String solution(String s) {
        char[] chars = s.toCharArray();

        for(int i = 0, start = 0; i < chars.length; i++) {
            if (' ' == chars[i]) {
                start = 0;
                continue;
            }
            
            chars[i] = (start++ % 2 == 0) ? Character.toUpperCase(chars[i]) : Character.toLowerCase(chars[i]);
        }

        return String.valueOf(chars);
    }
}

 

결과

 

소스코드 깃허브 주소

링크

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함