본문 바로가기

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

[lv1] 이상한 문자 만들기

문제

 

내 정답 코드

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로 반환한다.


배운 기술

'프로그래머스 (Swift) > lv 1' 카테고리의 다른 글

[lv1] 수박수박수  (0) 2024.10.23
[lv1] [1차] 다트 게임  (3) 2024.10.22
[lv1] K번째 수  (0) 2024.10.20
제일 작은 수 제거하기  (0) 2024.10.16
[lv1] 문자열 내 마음대로 정렬하기  (1) 2024.10.13