Maximum Points You Can Obtain from Cards LeetCode solution in Python

1
class Solution:
2
def maxScore(self, cardPoints: List[int], k: int) -> int:
3
n = len(cardPoints)
4
total = sum(cardPoints)
5

6
remaining_length = n - k
7
subarray_sum = sum(cardPoints[:remaining_length])
8

9
min_sum = subarray_sum
10
for i in range(remaining_length, n):
11
# Update the sliding window sum to the subarray ending at index i
12
subarray_sum += cardPoints[i]
13
subarray_sum -= cardPoints[i - remaining_length]
14
# Update min_sum to track the overall minimum sum so far
15
min_sum = min(min_sum, subarray_sum)
16
return total - min_sum

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0