알고리즘

[프로그래머스][Swift] 두 정수 사이의 합

moving 2022. 7. 11. 10:16
728x90

func solution(_ a:Int, _ b:Int) -> Int64 {
    
    return a > b ? Int64((b...a).reduce(0) { $0 + $1 }) : Int64((a...b).reduce(0) { $0 + $1 })
}

 

 

다른 사람의 풀이

func solution(_ a:Int, _ b:Int) -> Int64 {
    return Int64(a + b) * Int64(max(a, b) - min(a, b) + 1) / Int64(2)
}

등차수열의 합 공식 사용

등차수열이란 연속하는 두 항의 차이가 모두 일정한 수열

두 항 a, b가 주어졌을 때 n개의 합을 구하는 방식

Sn = (a + b) * n / 2