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의 평균

 

 

확실하게 알고 넘어가기 위해 자세하게 적었다.