1seul357

[SWEA] 구간 합 본문

알고리즘/SWEA

[SWEA] 구간 합

1seul 2021. 12. 3. 13:43
T = int(input())
for tc in range(T):
    N, M = map(int, input().split())
    arr = list(map(int, input().split()))
    max_sum = -99999             # 합이 가장 큰 수
    min_sum = 99999              # 합이 가장 작은 수 차이 구하기

    for i in range(N-M+1):     # 합을 구할 때 인덱스를 끝까지 가서 계산하면 인덱스 오류 발생한다. 범위를 초과하기 때문.
        sum = 0
        for j in range(i, i+M):
            sum += arr[j]
        if sum > max_sum:
            max_sum = sum
        if sum < min_sum:
            min_sum = sum

    print('#{} {}'.format(tc+1, max_sum-min_sum))

'알고리즘 > SWEA' 카테고리의 다른 글

[SWEA] min max  (0) 2021.12.03
[SWEA] 숫자 카드  (0) 2021.12.03
[SWEA] Flatten  (0) 2021.12.03
[SWEA] 부분집합의 합  (0) 2021.12.03
[SWEA] 숫자를 정렬하자  (0) 2021.12.03