본문 바로가기
🍎 Swift/Programmers

[👾 Programmers] 22. 두 정수 사이의 합

by 솔비님 2024. 6. 28.

 

1. 문제 설명 (📎Link)

두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요. 

예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다.

 

2. 제한사항

a와 b가 같은 경우는 둘 중 아무 수나 리턴하세요. 

a와 b는 -10,000,000 이상 10,000,000 이하인 정수입니다. 

a와 b의 대소관계는 정해져있지 않습니다.


📝 문제

func solution(_ a:Int, _ b:Int) -> Int64 {    
    return 0
}

 

 

💻 내가 푼 방법

 

1) 오류 발생 

 

a와 b가 같은 경우도 있으므로 Guard 문으로 조건을 걸러줌 → 실패 

 

2) a가 b보다 커질 경우도 있을 수 있다 → 경우를 나누어서 if 조건문 작성 성공 

func solution(_ a:Int, _ b:Int) -> Int64 {
    guard a != b else { return Int64(a) }
    var result = 0
    
    if a < b {
        for i in a...b {
            result += i
        }
    } else {
        for i in b...a {
            result += i
        }
    }
    
    return Int64(result)
}

 


🔎 의문점과 공부한 것

1. 문제를 잘 읽고 조건을 걸어줄 필요가 있는지 생각해보고 시작하자!