본문 바로가기

 𝗔𝗣𝗣𝗟𝗘/ALGORITHM

[내일배움캠프] 데일리 루틴(iOS_3회차) - 약수의 개수와 덧셈

이미지를 클릭하면 코딩테스트 페이지로 이동합니다

내 풀이

import Foundation

func solution(_ left:Int, _ right:Int) -> Int {
    var answer = 0
    for i in left ... right {
        var count = 0
        for j in 1...i {
            if i % j == 0 { // i의 약수 카운트
                count += 1
            }
        }
        if count % 2 == 0 {
            answer += i
        } else {
            answer -= i
        }
    }
    return answer
}

 

- solution 함수는 left와 right라는 두 정수를 매개변수로 받음

- answer 변수를 초기화하여 결과값을 저장할 준비 

- for 문을 통해 left부터 right까지의 모든 수를 순회

- 내부에 또 다른 for 문을 통해 각 수의 약수의 개수 구하기

- 각 수의 약수의 개수를 구하면서 count 변수에 누적

- 약수의 개수가 짝수인지 홀수인지를 판별하여 해당하는 수를 answer에 더하거나 빼주기

- 모든 수에 대한 연산이 끝나면 answer 값을 반환

Recent Posts
Visits
Today
Yesterday
Archives
Calendar
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31