Skip to content

Commit e298a50

Browse files
authored
Create 1695-maximum-erasure-value.js
1 parent af96702 commit e298a50

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed

1695-maximum-erasure-value.js

+36
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
/**
2+
* @param {number[]} nums
3+
* @return {number}
4+
*/
5+
const maximumUniqueSubarray = function(nums) {
6+
return maxSumSubarray(nums, nums.length)
7+
};
8+
9+
function maxSumSubarray(arr, n) {
10+
11+
let i = 0, j = 1;
12+
const set = new Set();
13+
set.add(arr[0]);
14+
15+
let sum = arr[0];
16+
let maxsum = sum;
17+
let end = arr[0]
18+
19+
while (i < n - 1 && j < n) {
20+
const is_in = set.has(arr[j])
21+
if (!is_in) {
22+
sum = sum + arr[j];
23+
maxsum = Math.max(sum, maxsum);
24+
25+
set.add(arr[j++]);
26+
} else {
27+
sum -= arr[i];
28+
set.delete(arr[i++]);
29+
}
30+
}
31+
return maxsum;
32+
}
33+
34+
function end(s) {
35+
return Array.from(s).pop();
36+
}

0 commit comments

Comments
 (0)