Skip to content

Commit 9845cfd

Browse files
authored
Create 2461. Maximum Sum of Distinct Subarrays With Length K (#639)
2 parents d1a4fab + 779bb77 commit 9845cfd

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
class Solution {
2+
public:
3+
long long maximumSubarraySum(vector<int>& nums, int k)
4+
{
5+
long ans = 0, sum = 0;
6+
unordered_map<int, int>mp;
7+
int i = 0, j = 0, n = nums.size();
8+
while(j < n)
9+
{
10+
sum += nums[j];
11+
mp[nums[j++]]++;
12+
if(j - i == k)
13+
{
14+
if(mp.size() == k)
15+
ans = max(ans, sum);
16+
mp[nums[i]]--;
17+
sum -= nums[i];
18+
if(not mp[nums[i]]) mp.erase(nums[i]);
19+
i++;
20+
}
21+
}
22+
return ans;
23+
}
24+
};

0 commit comments

Comments
 (0)