본문 바로가기
알고리즘/SWEA

[파이썬] [SWEA] 4835. [파이썬 S/W 문제해결 기본] 1일차 - 구간합

by SBOX Learning by doing 2021. 2. 20.
반응형

swexpertacademy.com/main/learn/course/subjectList.do?courseId=AVuPDN86AAXw5UW6

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

1. normal

T = int(input())
for tc in range(1,T+1):
    N, n = list(map(int, input().split()))
    arr = list(map(int, input().split()))
    # 최대


    # 섹터 합의 개수인 n을 뺀다

    for i in range(0, len(arr)-n+1):
        max_arr = 0
        min_arr = 0
        if i == 0:
            for k in range(n):
                max_arr += arr[i + k]
                min_arr += arr[i + k]
            max_cp = max_arr
            min_cp = min_arr

        else:
            for j in range(n):
                max_arr += arr[i+j]
                min_arr += arr[i+j]

            if max_cp < max_arr:
                max_cp = max_arr

            if min_cp > min_arr:
                min_cp = min_arr
    print(f"#{tc} {max_cp-min_cp}".format(tc, max_cp, min_cp))
반응형

댓글