반응형

출처: 프로그래머스 코딩 테스트 연습 문제

두 정수 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의 대소관계는 정해져있지 않습니다.

 

%%time

def solution(a, b):
    if a> b: a,b = b,a
    return sum(range(a,b+1))

a = 3
b = 5 
print(solution(a, b))

max 와 min을 이용하여 a,b 크기를 구한다.

def solution(a, b):
    answer = 0
    a, b = max(a,b), min(a, b)
    answer = sum([i for i in range(b, a + 1)]) # 
    # answer = sum(range(b, a + 1))
    return answer

a = 3
b = 5
solution(a, b)

2점이 나왔다. 

하지만 list로 변할 필요 없는데 번거럽게 해서 수정하면

answer = sum(range(b, a + 1))으로 수정하는 것이 좋을 것 같다. 

반응형

'문제 > 프로그래머스' 카테고리의 다른 글

[1차] 다트 게임  (0) 2021.09.15
나누어 떨어지는 숫자 배열  (0) 2021.09.04
문자열 내 마음대로 정렬하기  (0) 2021.09.04
문자열 내 p와 y의 개수  (0) 2021.09.04
문자열 내림차순으로 배치하기  (0) 2021.09.03

+ Recent posts