pub fn catalan_number(n: u8) -> usize { let mut result = 1f64; for k in 2..=n { result *= (n as f64 + k as f64) / k as f64; } result.round() as usize }