Je veux énumérer toutes les combinaisons possibles de N balles dans A boîtes.Enumération de combinaisons de N balles dans des boîtes A?
exemple: Je balles pour traiter dans boîtes:
box_1 box_2 box_3
case-1 8 0 0
case-2 0 8 0
case-3 0 0 8
case-4 7 1 0
case-5 7 0 1
case-6 6 2 0
...
Mon premier problème est que j'ai besoin A des boucles pour cela, mais je veulent que A et N être des entrées de l'utilisateur. Alors, comment faire sans écrire tout le nombre possible de boucles dont les utilisateurs pourraient avoir besoin?
un et N aura valeur entre 2 et ~ 800, il sera donc fortement exigeante en temps de calcul ainsi. Comment optimiser cet algorithme?
Je vous serais reconnaissant si vous me répondez en utilisant le langage python. merci pour toutes les contributions!
Simple, élégant et récursive ... +1 :) –
sol: J'essaie encore anderstand: øD écrit en python, il n'énumère pas tous possiblities donc je cherche où sont mes erreurs .. def énumérations (balles, boîtes, boîte): si Boîtes <= 0: print « erreur » Boîtes de Elif == 1 : zone [0] = Balls impression Boîtes autre: pour b dans la plage (billes): impression boîte b [Boîtes-1] = b Enumerate (Balls-b, boîtes-1, boite) boîte d'impression retour ### MAIN ### boîtes = 3 Balls 2 = boîte = [0] * 3 boîte d'impression Enumerate (2,3, box) –
Veuillez ne pas utiliser de pseudocode. Je pense que ta solution est fausse, mais je ne peux pas vraiment la critiquer parce que je ne comprends pas ce que tu veux dire par Box [1] = Balls. Vos pseudo-tableaux 1-indexés ou 0-indexés? Qu'est-ce que "Box"? Que fait "PrintBoxes"? – Glyph