import heapq N, K = map(int, input().split()) A = list(map(int, input().split())) B = [0] * (N + 1) for i, v in enumerate(A): B[i + 1] = B[i] + v ans = -(1 << 60) pq = [] pq_sum = 0 for X in range(1, N + 1): if X >= K: ans = max(ans, K * B[X] - pq_sum) heapq.heappush(pq, -B[X]) # reversed order pq_sum += B[X] if len(pq) >= K: pq_sum -= -heapq.heappop(pq) print(ans)