Coding Test/프로그래머스

[200511] 이상한 문자 만들기 - 연습문제(level1)

csmoon1010 2020. 5. 11. 23:51

1. 문제이해

- 단어(공백 기준) 별로 짝수번째 글자이면 소문자, 홀수번째 글자이면 대문자로 처리

 

2. 전략

- 문자 하나 str : s.substring(i, i+1)

(1) str이 공백이 아닌 경우

(1) index가 짝수 : str.toLowerCase()
(2) index가 홀수 : str.toUpperCase()

(2) str이 공백인 경우 : answer에 더해준 후 index = 1로 초기화

 

3. 참고사항

- 다른 풀이 : s.split("")를 통해 글자 배열 만들기

- 다른 풀이2 : s.charAt(i) 와 Character.toUpperCase, Character.toLowerCase이용

 

4. 코드

class Solution {
    public String solution(String s) {
        String answer = "";
        int index = 1;
        for(int i = 0; i < s.length(); i++){
            String str = s.substring(i, i+1);
            if(!str.equals(" "))
                answer += ((index++) % 2 == 0) ? str.toLowerCase() : str.toUpperCase();
            else{
                answer += str;
                index = 1;
            }
        }
        return answer;
    }
}