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

2024. 12. 6. 14:24·코딩테스트/프로그래머스 | Lv. 1

문제 설명

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


제한 사항

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


입출력 예

s return
"try hello world" "TrY HeLlO WoRlD"


입출력 예 설명

"try hello world"는 세 단어 "try", "hello", "world"로 구성되어 있습니다. 각 단어의 짝수번째 문자를 대문자로, 홀수번째 문자를 소문자로 바꾸면 "TrY", "HeLlO", "WoRlD"입니다. 따라서 "TrY HeLlO WoRlD" 를 리턴합니다.

 

제출답안 및 설명

class Solution {
    public String solution(String s) {
        // 결과 문자열을 저장할 변수
        String result = "";
        
        // 단어별 인덱스를 관리할 변수 (짝/홀수 판단용)
        int index = 0;
        
        // 문자열 전체를 순회
        for (int i=0; i<s.length(); i++) {
            // 현재 문자가 공백인 경우
            if (s.charAt(i) == ' ') {
                index = 0;                // 새로운 단어 시작을 위해 인덱스 초기화
                result += " ";            // 공백 추가
            } 
            // 현재 문자가 공백이 아닌 경우
            else {
                // 현재 문자를 String으로 변환
                String temp = String.valueOf(s.charAt(i));
                
                // 단어 내에서 짝수 인덱스인 경우 대문자로
                if (index % 2 == 0) {
                    result += temp.toUpperCase();
                } 
                // 단어 내에서 홀수 인덱스인 경우 소문자로
                else {
                    result += temp.toLowerCase();
                }
                
                index++;    // 다음 문자 처리를 위해 인덱스 증가
            }
        }
            
        return result;
    }
}

'코딩테스트 > 프로그래머스 | Lv. 1' 카테고리의 다른 글

[프로그래머스 | JAVA] 크기가 작은 부분 문자열  (0) 2024.12.06
[프로그래머스 | JAVA] 같은 숫자는 싫어  (0) 2024.12.06
[프로그래머스 | JAVA] 직사각형 별찍기  (1) 2024.12.05
[프로그래머스 | JAVA] 핸드폰 번호 가리기  (0) 2024.12.05
[프로그래머스 | JAVA] 행렬의 덧셈  (0) 2024.12.05
'코딩테스트/프로그래머스 | Lv. 1' 카테고리의 다른 글
  • [프로그래머스 | JAVA] 크기가 작은 부분 문자열
  • [프로그래머스 | JAVA] 같은 숫자는 싫어
  • [프로그래머스 | JAVA] 직사각형 별찍기
  • [프로그래머스 | JAVA] 핸드폰 번호 가리기
리키권
리키권
첫 회사를 퇴사하고 처음부터 다시 시작하는 개발일지
  • 리키권
    롤백없는 개발일지
    리키권
  • 전체
    오늘
    어제
    • 분류 전체보기 (31)
      • 취업준비 (3)
        • 구직 & 면접 (1)
        • 기타 (2)
      • 코딩테스트 (28)
        • 프로그래머스 | Lv. 0 (20)
        • 프로그래머스 | Lv. 1 (8)
        • 프로그래머스 | Lv. 2 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • 포트폴리오
  • 태그

    배포
    웹호스팅
    자바
    라이엇api
    이직
    java
    라이엇
    카페24
    개발자
    취준생
    Webflux
    롤전적
    Riot
    롤
    프로그래머스
    코딩테스트
    무료호스팅
    닷홈
    springboot
    롤API
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
리키권
[프로그래머스 | JAVA] 이상한 문자 만들기
상단으로

티스토리툴바