struct Solution; impl Solution { pub fn remove_duplicates(nums: &mut Vec) -> i32 { match nums.is_empty() { true => 0, false => { let mut prev = 0; for i in 1..nums.len() { if nums[prev] != nums[i] { prev += 1; nums[prev] = nums[i]; } } (prev + 1) as i32 } } } } fn main() { let mut nums = vec![0,0,1,1,1,2,2,3,3,4]; print!("{}", Solution::remove_duplicates(nums)); }