본문 바로가기
📖 Algorithm/코딩테스트

2022.06.22 「Lv.2 Jadan Case」

by GroovyArea 2022. 6. 22.

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

 

코딩테스트 연습 - JadenCase 문자열 만들기

JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 단, 첫 문자가 알파벳이 아닐 때에는 이어지는 알파벳은 소문자로 쓰면 됩니다. (첫 번째 입출력 예 참고

programmers.co.kr

 

문제 설명

JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 단, 첫 문자가 알파벳이 아닐 때에는 이어지는 알파벳은 소문자로 쓰면 됩니다. (첫 번째 입출력 예 참고)
문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하는 함수, solution을 완성해주세요.

제한 조건
  • s는 길이 1 이상 200 이하인 문자열입니다.
  • s는 알파벳과 숫자, 공백문자(" ")로 이루어져 있습니다.
    • 숫자는 단어의 첫 문자로만 나옵니다.
    • 숫자로만 이루어진 단어는 없습니다.
    • 공백문자가 연속해서 나올 수 있습니다.

 

문제 풀이 과정

모두 jadan 케이스로 만들어야 하기 때문에 공백을 기준으로 split으로 나눠 각각의 문자열 배열로 만든다. 

조심해야 할 점이 공백 문자가 연속적으로 나올 경우를 고려해야 한다. 

이 제한 사항 때문에 계속 테스트에 실패했다. 

 

그래서 처음에

빈 문자를 기준으로 모든 글자로 나누어진 문자열 배열을 만든다. 

그 후 첫 문자를 판단하는 flag boolean 변수를 선언한다. 

반복문을 통해 첫 글자일 경우 toUpperCase()를 사용한다. 

공백이 나올 경우 flag를 true로 변경한다.

 

 

반응형