TIL | [알고리즘] 이상한 문자 만들기(Java)

hyemin·2022년 3월 14일
0

알고리즘

목록 보기
21/38
post-thumbnail

THINKING

  1. .split("")으로 공백을 기준으로 문자열 나누기
  2. 공백을 만날 때마다 인덱스 변수를 0으로 초기화하기
  3. 짝수와 홀수의 경우를 나눠서 .toUpperCase()/.toLowerCase()를 이용해 문자를 변경한다
  4. 한 글자씩 처리후 answer에 담고 return한다.

내 풀이

class Solution {
    public String solution(String s) {
        String answer = "";
        int idx = 0;
        
        String[] str = s.split("");
        
        for (int i = 0; i < str.length; i++) {
            if (str[i].equals(" ")) {
                idx = 0;
            } else if (idx % 2 == 0) {
                str[i] = str[i].toUpperCase();
                idx++;
            } else {
                str[i] = str[i].toLowerCase();
                idx++;
            }
            answer += str[i];
        }
        return answer;
    }
}

좋아요 많이 받은 풀이

class Solution {
  public String solution(String s) {

        String answer = "";
        int cnt = 0;
        String[] array = s.split("");

        for(String ss : array) {
            cnt = ss.contains(" ") ? 0 : cnt + 1;
            answer += cnt%2 == 0 ? ss.toLowerCase() : ss.toUpperCase(); 
        }
      return answer;
  }
}

나와 똑같은 원리이나 삼항 연산자를 이용한 풀이였다.

0개의 댓글

관련 채용 정보