1423. Maximum Points You Can Obtain from Cards - cocoder39/coco39_LC GitHub Wiki
1423. Maximum Points You Can Obtain from Cards
class Solution:
def maxScore(self, cardPoints: List[int], k: int) -> int:
n = len(cardPoints)
total = 0
window_sum = 0
min_window_sum = float("inf")
for i in range(n):
total += cardPoints[i]
window_sum += cardPoints[i]
if i >= n-k:
window_sum -= cardPoints[i-n+k]
if i >= n-k-1:
min_window_sum = min(min_window_sum, window_sum)
return total - min_window_sum