유블로그

[프로그래머스] JadenCase문자열만들기 본문

알고리즘

[프로그래머스] JadenCase문자열만들기

yujeong kang 2021. 1. 23. 22:55

[프로그래머스] level2 JadenCase문자열만들기

 

쉬운 문제다.

하라는 대로 하면 된다.

그런데 처음에 내가 split 함수로 공백을 무조건 한 개씩만 두는 걸로 해버려서

시간이 꽤 걸렸다.

주어진 문제에 충실하게 풀자!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

내 맘대로 생각하기 금지

class Solution {
  public String solution(String s) {
    StringBuilder answer = new StringBuilder();

    char[] arr = s.toCharArray();
    for (int i = 0; i < s.length(); i++) {
      if(arr[i] == ' ') {
        answer.append(' ');
        continue;
      }

      if((97 <= arr[i] && arr[i] <= 122)) {	// 소문자일 때
        if(i == 0 || (i != 0 && arr[i-1] == ' ')) {
        	arr[i] = (char)(arr[i] - 32);	// 앞이 공백이면 대문자로 바꿈
        }
      }
      else if(i != 0 && (65 <= arr[i] && arr[i] <= 90) && arr[i-1] != ' ') { // 대문자일 때
      	arr[i] = (char)(arr[i] + 32);
      }
      answer.append(arr[i]);
    }

    return answer.toString();
  }
}