알고리즘 문제 풀이

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

lgvv 2022. 4. 1. 23:50

프로그래머스 LV2. JadenCase 문자열 만들기

 

✅ 프로그래머스 LV2. JadenCase 문자열 만들기

이거 왜 포스팅 하냐면, 코딩 테스트에서 dumped core 나는 경우 먼저 확인해 보고자 하는 의미에서 포스팅함.

물론 알고리즘이 정확하다고 가정

 

 

아래 코드에서 7번 줄의 주석을 보면 코드를 수정한 것을 볼 수 있는데, 주석 처럼 작성하니 에러가 났음

   func solution(_ s:String) -> String {
        let s = s.components(separatedBy: " ").map { $0.lowercased() }
        
        var answer = [String]()
        s.forEach { str in
            
            if ((str.first?.isLetter) != nil) { // str.first!.isLetter
                var up = str.first!.uppercased()
                let index = str.index(str.startIndex, offsetBy: 1)
                answer.append("\(up)\(str[index...])")
            } else {
                answer.append(str)
            }
            
        }
        
        
        return answer.joined(separator: " ")
    }