프로그래머스

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

내손은개발 🐾 2024. 3. 29. 20:32
 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

문제

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

 

 

제한 조건

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

 

입출력 예

 

 

풀이

class Solution {
    fun solution(s: String): String {
        return s.split(' ').joinToString(" ") { it.lowercase().replaceFirstChar { it.uppercase() } }
    }

 

한 줄로 쓰려고 노력한 결과 성공했다. 좋게 말하면, 가독성 좋아보이게 작성한 것? 같다.

하지만..

뭔가 찝찝했는데 여기에 있었다.

 

정말 내가 쓴 코드를 그대로 for문을 돌려서 사용했는데도 시간 차이가 났다.

다시 반복문을 사용해서 문제를 푼다면 시간을 훨씬 시간이 덜 소요될 것 같다...