[프로그래머스, 12930] 이상한 문자 만들기 (java)
Problem Solving/Programmers

[프로그래머스, 12930] 이상한 문자 만들기 (java)

728x90

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

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

728x90

메모리: 72.6 MB, 시간: 0.11 ms

사용 알고리즘: 문자열

import java.util.*;

class Solution {
    public String solution(String s) {
        
        // 일단 다 소문자로 변경
        s = s.toLowerCase();
        
        StringBuilder answer = new StringBuilder();

        int index = 0;
        
        for(int i = 0; i < s.length(); i++) {
            if(s.charAt(i) >= 'a' && s.charAt(i) <= 'z') { // 영어 문자라면
                if(index % 2 == 0) { // 짝수번째 알파벳은 대문자로
                    answer.append((char)(s.charAt(i) - 'a' + 'A'));
                }
                // 홀수번째 알파벳은 소문자로
                else answer.append(s.charAt(i));
                
                index++;
            }
            else { // 영어 문자가 아니라면 그대로 출력
                answer.append(s.charAt(i));
                index = 0;
            }
        }
        
        return answer.toString();
    }
}
728x90