description

Given an integer array arr, return true if there are three consecutive odd numbers in the array. Otherwise, return false.

 

Example 1:

Input: arr = [2,6,4,1]
Output: false
Explanation: There are no three consecutive odds.

Example 2:

Input: arr = [1,2,34,3,4,5,7,23,12]
Output: true
Explanation: [5,7,23] are three consecutive odds.

 

Constraints:

  • 1 <= arr.length <= 1000
  • 1 <= arr[i] <= 1000

submission

impl Solution {
    // simple rust iterator solution
    pub fn three_consecutive_odds(arr: Vec<i32>) -> bool {
        arr.windows(3).find(|w| w.iter().all(|n| n % 2 == 1)).is_some()
    }
}