프로그래머스 (Swift)/lv 1

[lv1] 이상한 문자 만들기

은더기 2024. 10. 21. 00:48

문제

 

내 정답 코드

func solution(_ s:String) -> String {
    var s = s.map { String($0) }
    var index = 0
    
    for i in 0..<s.count {
        if s[i] == " " {
            index = 0
        } else {
            if index.isMultiple(of: 2) {
                s[i] = s[i].uppercased()
            } else {
                s[i] = s[i].lowercased()
            }
            index += 1
        }
    }
    
    return s.joined()
}

 

#

1. s라는 문자열을 문자열 배열로 변환한다.

2. index = 0 을 만들고, s배열로 반복문을 돌린다.

3. 공백을 발견하면 index를 0으로 초기화 하고,

4. 공백이 아니라면 isMultiple을 통해 짝수, 홀수를 판단하고,

5. 짝수인 문자는 대문자로, 홀수인 문자는 소문자로 바꿔준다.

6. index의 +1을 해준다.

7. 변환된 문자열 배열을 joined로 반환한다.


배운 기술