프로그래머스 - 연속된 수의 합

dobyming·2022년 12월 26일
0

문제 설명

연속된 세 개의 정수를 더해 12가 되는 경우는 3, 4, 5입니다. 두 정수 num과 total이 주어집니다. 연속된 수 num개를 더한 값이 total이 될 때, 정수 배열을 오름차순으로 담아 return하도록 solution함수를 완성해보세요.


제한사항

  • 1 ≤ num ≤ 100
  • 0 ≤ total ≤ 1000
  • num개의 연속된 수를 더하여 total이 될 수 없는 테스트 케이스는 없습니다.

입출력 예

numtotalresult
312[3, 4, 5]
515[1, 2, 3, 4, 5]
414[2, 3, 4, 5]
55[-1, 0, 1, 2, 3]

내 코드

def solution(num, total):
    answer = []
    
    if total % num == 0:
        subNum = num // 2
    else:
        subNum = num // 2 - 1
    firstNum = (total // num) - subNum #result arr 시작 숫자
    
    for i in range(num):
        answer.append(firstNum+i)
        
    return answer

구현 문제
answer 배열의 시작 숫자를 어떻게 잡을 수 있을지 고민해보는 문제

  • total % num == 0
  • total % num != 0

2가지 상황을 고려 후, 입출력 예의 테스트케이스를 분석 시, 규칙이 보이는 문제

0개의 댓글