문제

풀이
- 결과를 저장할 result 변수를 0으로 초기화합니다.
- 외부 반복문 (for j in left...right): left부터 right까지 반복합니다.
- abc 함수 호출 하는데 해당 함수는 약수 계산하기위한 함수입니다.
- abc 함수 내부 for문에서는 1부터 j까지 모든 수 i에 대해 반복하면서 i가 j의 약수인지 확인하고 약수인 경우, count 변수를 1 증가시킵니다. abc 함수가 완료되면, j의 약수의 총 개수를 반환합니다.
- abc 함수로부터 반환된 약수의 개수를 number 변수에 할당합니다.
- 삼항연산자를 통해 약수의 개수(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)