프로그래머스-약수의 개수와 덧셈

효딩딩·2023년 12월 13일
0

문제

풀이

  1. 결과를 저장할 result 변수를 0으로 초기화합니다.
  2. 외부 반복문 (for j in left...right): left부터 right까지 반복합니다.
  3. abc 함수 호출 하는데 해당 함수는 약수 계산하기위한 함수입니다.
  4. abc 함수 내부 for문에서는 1부터 j까지 모든 수 i에 대해 반복하면서 i가 j의 약수인지 확인하고 약수인 경우, count 변수를 1 증가시킵니다. abc 함수가 완료되면, j의 약수의 총 개수를 반환합니다.
  5. abc 함수로부터 반환된 약수의 개수를 number 변수에 할당합니다.
  6. 삼항연산자를 통해 약수의 개수(number)가 짝수인 경우, result에 현재 숫자 j를 더하고, 홀수인 경우 j를 뺍니다. 해당값을 result에 할당하고 return 합니다.
func solution(_ left:Int, _ right:Int) -> Int {
    var result = 0
    func abc(_ num: Int)-> Int {
        var count = 0
        for i in 1...num {
            if num % i == 0 {
                count += 1
            }
        }
        return count
    }
    
    for j in left...right {
        let number = abc(j)
        result += number % 2 == 0 ? j : -j
    }
    return result
}
solution(13,17)
solution(24,27)
profile
어제보다 나은 나의 코딩지식

0개의 댓글