Combinaties ballen trekken (maar dan anders)

Moderators: dirkwb, Xilvo

Reageer
Berichten: 1

Combinaties ballen trekken (maar dan anders)

Voor een projectje kan een gebruiker een selectie van items maken op basis van een complexe set regels. Nu loop ik eigenlijk een beetje vast in het uitrekenen van de mogelijke combinaties.

In het kort komt mijn probleem hier op neer:

Er zijn X bakken met ballen, van Y verschillende kleuren. In elke bak kan een willekeurig aantal ballen zitten, maar er zit altijd maar één bal van dezelfde kleur in. Van elke bak wordt opgegeven hoeveel ballen er uit getrokken moeten worden. Nu wil ik weten hoeveel combinaties van trekkingen er zijn zonder dat een bal van dezelfde kleur twee keer getrokken is.

Voorbeeldje:

Bak 1: [Groen, Blauw, Zwart, Rood] - 2 trekkingen

Bak 2: [Geel, Blauw, Zwart, Oranje, Paars] - 3 trekkingen

-- (Er zijn dus 7 kleuren, waarvan blauw en zwart in beide bakken zitten)

Dus zodra er een blauwe bal uit bak 1 is getrokken mag de blauwe bal niet meer uit bak 2 getrokken worden.

Iemand een voorzetje of artikelen waar vergelijkbare issues behandeld worden? Mijn combinatoriek lessen zijn ondertussen alweer 6 jaar geleden en een beetje weggezakt en ik zie ondertussen door de bomen het bos niet meer ;)

Overigens is echte echte probleem nog een stukje ingewikkelder, maar laten we eens beginnen met het oplossen van een deelprobleem.

Berichten: 7.068

Re: Combinaties ballen trekken (maar dan anders)

Ik denk niet dat daar een eenvoudige oplossing voor is. Het lijkt me typisch een programmeeropgave.

Voor eenvoudige opgaves kan het nog wel met de hanf:

Bak 1: [Groen, Blauw, Zwart, Rood] - 2 trekkingen

Bak 2: [Geel, Blauw, Zwart, Oranje, Paars] - 3 trekkingen

Stel dat je uit bak 1 een blauwe en een zwarte bal trekt dan kan je bak 2 beschouwen als een bak met een gele, een oranje en een paarse bal.

Stel dat je uit bak 1 een blauwe en een groene bal trekt dan kan je bak 2 beschouwen als een bak met een gele, een oranje, een zwarte en een paarse bal.

enz.

Op deze manier is elke situatie nog wel te behapstukken, maar het is niet heel praktisch voor complexe situaties.

Reageer