Count Number of Nice Subarrays LeetCode solution in Rust

1
impl Solution {
2
pub fn number_of_subarrays(nums: Vec<i32>, k: i32) -> i32 {
3
let mut total = 0;
4
let mut odd = 0;
5
let mut count = 0;
6

7
let mut j = 0;
8
let is_odd = |x| x % 2 == 1;
9

10
for &num in nums.iter() {
11
if is_odd(num) {
12
odd += 1;
13
count = 0;
14
}
15

16
while odd == k {
17
if is_odd(nums[j]) {
18
odd -= 1;
19
}
20
count += 1;
21
j += 1;
22
}
23
total += count;
24
}
25

26
total as i32
27
}
28
}

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0