본문 바로가기
코딩 오늘

2023.04.25

by 마동휘 2023. 4. 26.

문제를 풀 때는 그에 대한 문해력이 필요하다

요컨데 문제가 시사하는 바가 무엇인가

같은 말이다 같은 의미이고

문제를 이해 못하면 문제를 시작하는 것조차

불가능 하다는 의미이기도 하다

오늘의 문제가 그러했다

 

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

 

문해력이 참으로 감퇴한 것인지 읽어도 이해가 안된다

그럴 땐 조각을 내서 보아 본다

연속된 3개의 정수, - 3,4,5

더해서 12

두 정수 num, total

연속된 수 num 개 

더한 total

정수 배열을 오름차순

정리를 해보니 문제가 보인다

total 값을 만드는 num 개의 연속된수,

num = 3

total = 6

이면, 정수배열은 1,2,3이다

그렇다면 중간값에서 -1, +1 을 함으로서 값을 구하면 되지않을까

6에서 3을 나누고 -1, +1

이를 함수로서 만들자면 이렇게 된다

def solution(num, total):
    answer = []
    if num % 2 == 1:
        center = total // num
        start = center - ((num - 1)//2)
        end = center+((num-1)//2)
        for i in range(start, end+1):
            answer.append(i)
    else:
        left = total // num
        start = left - ((num - 1)//2)
        end = left + ((num - 1)//2) + 1
        for i in range(start, end+1):
            answer.append(i)

    return answer

'코딩 오늘' 카테고리의 다른 글

2023.05.03  (0) 2023.05.04
2023.05.02  (0) 2023.05.03
2023.04.24  (0) 2023.04.25
2023.04.21  (0) 2023.04.24
2023.04.20  (0) 2023.04.21

댓글