// N choose K algorithm for unsigned integers.
//
// This is used to compute hamming shell areas/volumes (the notion of volume/area breaks down in discrete spaces).
N choose K algorithm for unsigned integers.
This is used to compute hamming shell areas/volumes (the notion of volume/area breaks down in discrete spaces).
N choose K algorithm for unsigned integers . This is used to compute hamming shell areas / volumes ( the notion of volume / area breaks down in discrete spaces ) .
fn n_choose_k(n: usize, k: usize) -> f64 {
    if k == 0 {
        1.0
    } else {
        n_choose_k(n - 1, k - 1) * n as f64 / k as f64
    }
}
fn n_choose_k ( n : usize , k : usize ) -> f64 { if k == 0 { 1.0 } else { n_choose_k ( n - 1 , k - 1 ) * n as f64 / k as f64 } }
N choose K algorithm for unsigned integers.
N choose K algorithm for unsigned integers .
n
usize
k
usize