Skip to content

Commit 8a4a449

Browse files
committed
2461
1 parent e703333 commit 8a4a449

File tree

1 file changed

+27
-0
lines changed

1 file changed

+27
-0
lines changed

Nov-19-24.py

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
class Solution:
2+
def maximumSubarraySum(self, nums: List[int], k: int) -> int:
3+
cache = defaultdict(int)
4+
ans = 0
5+
size = 0
6+
s = 0
7+
for i in range(k):
8+
cache[nums[i]] += 1
9+
size = len(cache)
10+
for key,v in cache.items():
11+
s += key*v
12+
if size==k:
13+
ans = max(ans,s)
14+
for i in range(k,len(nums)):
15+
if cache[nums[i-k]]==1:
16+
size -= 1
17+
del cache[nums[i-k]]
18+
else:
19+
cache[nums[i-k]] -= 1
20+
if nums[i] not in cache:
21+
size += 1
22+
cache[nums[i]] += 1
23+
s -= nums[i-k]
24+
s += nums[i]
25+
if size==k:
26+
ans = max(ans,s)
27+
return ans

0 commit comments

Comments
 (0)