JAVA/Algorithm

[프로그래머스/java] 이상한 문자 만들기

nang. 2020. 12. 2. 01:03
반응형
SMALL

https://programmers.co.kr/learn/courses/30/lessons/12930

 

코딩테스트 연습 - 이상한 문자 만들기

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

programmers.co.kr

 

  • StringBuilder를 사용하지 않아도 가능
  • 공백 만나면 인덱스를 0으로 설정

 

class Solution {
    public String solution(String s) {
        StringBuilder sb = new StringBuilder();
        int index = 0;
        
        for(int i = 0; i < s.length(); i++) {
            if(s.charAt(i) == ' ') { // 공백이면
                sb.append(' '); // 공백 추가
                index = 0; // 공백을 만났으니 다시 새로운 단어 시작이므로 index를 0으로 설정
            } else {
                if(index % 2 != 0) { // 홀수이면
                    sb.append(Character.toLowerCase(s.charAt(i))); // 소문자
                    index++; // 다음 문자열
                } else { // 짝수이면
                    sb.append(Character.toUpperCase(s.charAt(i))); // 대문자
                    index++; // 다음 문자열
                }
            }
        }
        
        return sb.toString();
    }
}
반응형
LIST