문제 설명
두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요.
예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다.
solution
def solution(a, b): answer = 0 if a <= b: while(a <= b): answer += a a += 1 else: while(b <= a): answer += a a -= 1 return answer
다른 풀이를 봤는데 할 말을 잃었다. '어떻게 이걸 생각했을까' 하고 감탄했다. 수학적 머리가 조금은 필요한 부분이었다고 생각한다.. 물론 나는 수학에 약하니 아래처럼 코드를 짤 수 없을 것이다. 그래도 이렇게도 풀 수 있다는 걸 알았으니 다음 문제 때 써먹어야겠지?
another solution
def solution(a, b): return (abs(a-b)+1)*(a+b)//2
시행착오가 많았지만 결국 해냈다. 내 기준에 가장 기본적인 함수들로 깔끔하게 짠 것 같아서 만족한다.