diff options
Diffstat (limited to 'min_avg_diff.rs')
-rw-r--r-- | min_avg_diff.rs | 23 |
1 files changed, 0 insertions, 23 deletions
diff --git a/min_avg_diff.rs b/min_avg_diff.rs deleted file mode 100644 index 71c18aa..0000000 --- a/min_avg_diff.rs +++ /dev/null @@ -1,23 +0,0 @@ -struct Solution; - -impl Solution { - pub fn minimum_average_difference(nums: Vec<i32>) -> i32 { - let (mut left, mut ans, mut min) = (0, 0, i64::MAX); - let mut right = nums.iter().map(|&x| x as i64).sum::<i64>(); - for i in 0..nums.len() { - left += nums[i] as i64; - right -= nums[i] as i64; - let diff = (left / (i + 1) as i64 - right / 1i64.max((nums.len() - i - 1) as i64)).abs(); - if diff < min { - ans = i as i32; - min = diff; - } - } - ans - } -} - -fn main() { - let nums = vec![2,5,3,9,5,3]; - print!("{}", Solution::minimum_average_difference(nums)); -} |