title: Queries Counts Array Elements Values Given Range
signature: pub fn queries_counts_array_elements_values_given_range(arr: Vec<i32>, n: i32, x: i32, y: i32) -> i32 {
test_code: use std::collections::HashMap;
  use std::collections::HashSet;
  use std::cmp::*;
  use std::collections::*;
  use std::fmt::*; 
  
  
  // SOLUTION CODE
  // ============================================
  PLACEHOLDER_CODE_BODY
  
  // TESTING CODE 
  // ============================================
  pub fn validate_solution(actual: i32, expected: i32)->bool{
  return actual==expected
  }
  pub fn driver(arr: Vec<i32>, n: i32, x: i32, y: i32, expected: i32)->String{
      if validate_solution(PLACEHOLDER_FN_NAME(arr, n, x, y), expected) {
        return "PASSED".to_string();
      };
      return "FAILED".to_string();
  
  }
  
  fn main() {
      println!("TEST-0...{}", driver(
        Vec::from([9, 16, 19, 24, 36, 38, 42, 49, 51, 53, 53, 57, 57, 58, 71, 78, 78, 92, 92, 93]), 13, 12, 13, 
        0
      ));
      
      println!("TEST-1...{}", driver(
        Vec::from([28, -74, -18, 10, 26, 28, -96, -80, 82, 94, 22, 50, 72, -90, 76, 50, 20, -44, -80]), 18, 13, 13, 
        0
      ));
      
      println!("TEST-2...{}", driver(
        Vec::from([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 30, 21, 31, 
        0
      ));
      
      println!("TEST-3...{}", driver(
        Vec::from([25, 8, 66, 90, 50, 65, 76, 90, 27]), 4, 8, 5, 
        0
      ));
      
      println!("TEST-4...{}", driver(
        Vec::from([-98, -96, -90, -82, -80, -78, -70, -66, -60, -60, -50, -48, -34, -26, -24, -16, -14, -8, -6, 4, 22, 24, 26, 30, 30, 48, 52, 56, 60, 62, 74, 76, 78, 86]), 32, 24, 24, 
        1
      ));
      
      println!("TEST-5...{}", driver(
        Vec::from([1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0]), 15, 16, 12, 
        0
      ));
      
      println!("TEST-6...{}", driver(
        Vec::from([4, 6, 17, 19, 24, 29, 30, 31, 32, 37, 37, 40, 43, 44, 44, 45, 57, 64, 69, 70, 73, 78, 86, 89, 91, 92, 94]), 17, 21, 15, 
        0
      ));
      
      println!("TEST-7...{}", driver(
        Vec::from([32, -88, 70, -6, 28, -48]), 4, 3, 4, 
        0
      ));
      
      println!("TEST-8...{}", driver(
        Vec::from([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 13, 12, 11, 
        0
      ));
      
      println!("TEST-9...{}", driver(
        Vec::from([37, 84, 97, 74, 12, 26, 47, 10, 14, 33]), 5, 9, 8, 
        0
      ));
      
  }
source_py: def queries_counts_array_elements_values_given_range(arr, n, x, y):
      count = 0
      for i in range(n):
          if ((arr[i] >= x) and (arr[i] <= y)):
              count += 1
      return count
source_cpp: int queries_counts_array_elements_values_given_range(vector<int> arr, int n, int x, int y) {
    int count = 0;
    for ( int i = 0;
    i < n;
    i ++ ) {
      if ( arr [ i ] >= x && arr [ i ] <= y ) count ++;
    }
    return count;
  }