출처:프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/12912
난이도:Lv.1
문제 설명
두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요.
예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다.
제한 조건
- a와 b가 같은 경우는 둘 중 아무 수나 리턴하세요.
- a와 b는 -10,000,000 이상 10,000,000 이하인 정수입니다.
- a와 b의 대소관계는 정해져있지 않습니다.
입출력 예
a | b | return |
3 | 5 | 12 |
3 | 3 | 3 |
5 | 3 | 12 |
1차 시도(실패)
func solution( a:Int, b:Int) -> Int64 {
var sum: Int64 = 0
for i in a...b{
sum += Int64(i)
}
return sum
}
코드를 짜고 기쁜 마음에 컴파일을 눌러봤지만!!! 실패..
이유는 a와 b가 같을 때와 b가 더 큰경우를 고려하지 않았기 때문 ㅠㅠ..
다음에는 실수하지 말아야지!
2차 시도(성공)
func solution(_ a: Int, _ b: Int) -> Int64 {
var sum: Int64 = 0
if a > b {
// a가 b보다 큰 경우, b부터 a까지의 범위로 합을 계산
for i in b...a {
sum += Int64(i)
}
} else if a < b {
// a가 b보다 작은 경우, a부터 b까지의 범위로 합을 계산
for i in a...b {
sum += Int64(i)
}
} else {
// a와 b가 같은 경우, a 또는 b 하나의 값으로 합을 계산
sum = Int64(a)
}
return sum
}
'Programmers' 카테고리의 다른 글
[iOS Swift] Lv.1 서울에서 김서방 찾기 (0) | 2024.05.13 |
---|---|
[iOS Swift] Lv.1 콜라츠 추측 (0) | 2024.05.13 |
[iOS Swift] Lv.1 하샤드 수 (0) | 2024.05.13 |
[iOS Swift] Lv.1 정수 내림차순으로 배치하기 (0) | 2024.05.12 |
[iOS Swift] Lv.1 정수 제곱근 판별 (0) | 2024.05.10 |