| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Reloto.Combin
Description
Calculs de combinaisons.
Synopsis
- nCk :: Integral i => i -> i -> i
- combinOfRank :: Integral i => i -> i -> i -> [i]
- rankOfCombin :: Integral i => i -> [i] -> i
- permute :: [Int] -> [a] -> [a]
Documentation
combinOfRank :: Integral i => i -> i -> i -> [i] Source #
combinOfRank n k r retourne les indices de permutation
de la combinaison de k entiers parmi [1..n]
au rang lexicographique r dans [0...nCk n k - 1]
Construit chaque choix de la combinaison en prenant le prochain plus grand dont le successeur engendre un nombre de combinaisons qui dépasse le rang restant à atteindre.
DOC: http://www.site.uottawa.ca/~lucia/courses/5165-09/GenCombObj.pdf, p.26
rankOfCombin :: Integral i => i -> [i] -> i Source #
rankOfCombin n ns retourne le rang lexicographique dans [0..
de la combinaison nCk n (length ns) - 1]ns d’entiers parmi [1..n].
WARNING: ns doit être triée de manière ascendante.
Compte le nombre de combinaisons précédant celle de rang r.
DOC: http://www.site.uottawa.ca/~lucia/courses/5165-09/GenCombObj.pdf, pp.24-25
rankOfCombinn (combinOfRankn k r) == rcombinOfRankn (lengthns) (rankOfCombinn ns) == ns