title: Dyck Path
signature: pub fn dyck_path(n: i32) -> f64 {
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: f64, expected: f64)->bool{
  return (actual - expected).abs() < 1e-09
  }
  pub fn driver(n: i32, expected: f64)->String{
      if validate_solution(PLACEHOLDER_FN_NAME(n), expected) {
        return "PASSED".to_string();
      };
      return "FAILED".to_string();
  
  }
  
  fn main() {
      println!("TEST-0...{}", driver(
        28, 
        263747951750360.03
      ));
      
      println!("TEST-1...{}", driver(
        13, 
        742900.0
      ));
      
      println!("TEST-2...{}", driver(
        7, 
        429.0
      ));
      
  }
source_py: def dyck_path(n):
      res = 1
      for i in range(0, n):
          res *= ((2 * n) - i)
          res /= (i + 1)
      return (res / (n + 1))
source_cpp: int dyck_path(unsigned int n) {
    int res = 1;
    for ( int i = 0;
    i < n;
    ++ i ) {
      res *= ( 2 * n - i );
      res /= ( i + 1 );
    }
    return res / ( n + 1 );
  }