Opgave

Implementeer Python-functies voor het genereren van partities van het gehele getal n in k delen, waarbij de delen verschillend zijn, in omgekeerde lexicografische volgorde van de standard form (zie referentie):

Voorbeelden

>>> genereerPartities(5, 2)
[[4, 1], [3, 2]]
>>> genereerPartities(8, 3)
[[5, 2, 1], [4, 3, 1]]
>>> genereerPartities(16, 4)
[[10, 3, 2, 1], [9, 4, 2, 1], [8, 5, 2, 1], [8, 4, 3, 1], [7, 6, 2, 1], [7, 5, 3, 1], [7, 4, 3, 2], [6, 5, 4, 1], [6, 5, 3, 2]]
>>> telPartities(5, 2)
2
>>> telPartities(8, 3)
2
>>> telPartities (16, 4)
9
>>> partitieLexRank(16, 4, [8, 4, 3, 1])
3
>>> partitieLexUnrank(16, 4, 3)
[8, 4, 3, 1]
>>> partitieLexSuccessor(16, 4, [8, 4, 3, 1])
[7, 6, 2, 1]

Referentie