level1_두 정수 사이의 합
2024. 1. 24. 23:05ㆍ파이썬_알고리즘(코딩테스트)/level1

내가 제출한 코드
def solution(a,b):
if a < b:
return sum(list(range(a, b + 1)))
else:
return sum(list(range(b, a +1 )))
다른 사람이 제출한 코드
def adder(a,b):
return (abs(a-b)+1)*(a+b)//2
진짜 등차수열의 합공식은 굉장히 많이 쓰이는 거 같다.
1부터 n까지의 합 공식은 n(n+1)/2이다.
(abs(a-b)+1) : a와 b를 포함한 사이의 전체 정수 개수를 뜻한다. 예를 들어 a = 3이고, b = 5라면 |3-5| + 1 = 3이 되어
3,4,5 세 개의 숫자를 나타낸다.
(a+b) : 등차수열의 합 공식에서 처음수와 마지막 수의 합에 해당한다.
(a+b) // 2 : a와 b의 평균

확실하게 알고 넘어가기 위해 자세하게 적었다.
'파이썬_알고리즘(코딩테스트) > level1' 카테고리의 다른 글
| level1_음양 더하기 (0) | 2024.01.30 |
|---|---|
| level1_없는 숫자 더하기 (1) | 2024.01.29 |
| level1_제일 작은 수 제거하기 (0) | 2024.01.24 |
| level1_나누어 떨어지는 숫자 배열 (0) | 2024.01.23 |
| level1_콜라츠 추측 (0) | 2024.01.12 |