maximum-erasure-value

This commit is contained in:
2022-06-12 12:43:26 +01:00
parent d39ecf28a8
commit 2408262b66
2 changed files with 45 additions and 8 deletions

View File

@@ -0,0 +1,20 @@
use std::collections::HashSet;
impl Solution {
pub fn maximum_unique_subarray(nums: Vec<i32>) -> i32 {
let mut l = 0;
let mut max = 0;
let mut sum = 0;
let mut exists = HashSet::new();
for r in 0..nums.len() {
sum += nums[r];
while !exists.insert(nums[r]) {
exists.remove(&nums[l]);
sum -= nums[l];
l += 1;
}
max = max.max(sum);
}
max as i32
}
}