struct Solution; impl Solution { pub fn max_sum(mut nums: Vec) -> i32 { nums.sort_by(|a,b| b.cmp(a)); let mut last = nums[0]; let mut ans = nums[0]; for i in 1..nums.len() { let t = nums[i]; if t <= 0 { break } if t == last { continue; } last = t; ans += t; } ans } } fn main() { let sl = Solution::max_sum(vec![-1,-2]); println!("{}", sl); }