In haar grote puzzelboek vindt kleine Lena onderstaande puzzel, waarbij het de bedoeling is om elke fruitsoort met de bijhorende kleur te verbinden.

kleurrijk fruit
Verbind elke fruitsoort met de bijhorende kleur.

Omdat kleine Lena een beetje tegendraads is (of gewoon nog een beetje te klein), vindt ze er haar plezier in om willekeurig de soorten fruit met de kleuren te verbinden. Ze let er wel op dat elke soort fruit hoogstens met één kleur verbonden wordt, en dat elke kleur hoogstens met één fruitsoort verbonden wordt.

Opgave

Schrijf een functie

combineer(kleuren, fruitsoorten[, aantal])

waaraan twee reeksen (list of tuple) van woorden (str) moeten doorgegeven worden. De functie heeft ook nog een optionele derde parameter aantal waaraan een integer (int) kan doorgegeven worden. De functie moet een lijst (list) van strings (str) teruggeven, waarvan elk element de vorm een woord1 woord2 heeft. Hierbij is woord1 een willekeurig gekozen woord uit de eerste reeks en woord2 een willekeurig gekozen woord uit de tweede reeks. De functie moet combinaties maken totdat alle woorden uit één van beide reeksen opgebruikt zijn, rekening houdend met het feit dat elk woord uit een reeks hoogstens één keer kan gebruikt worden. Indien er expliciet een waarde wordt doorgegeven aan de parameter aantal, dan worden hoogstens zoveel combinaties in een lijst teruggegeven.

Hint

Bestudeer de werking van de functies choice en sample in de module random uit de The Python Standard Library1.

Voorbeeld

>>> kleuren = ['paarse', 'gele', 'groene']
>>> fruitsoorten = ('druif', 'banaan', 'appel')
>>> combineer(kleuren, fruitsoorten)
['een paarse druif', 'een groene banaan', 'een gele appel']
>>> combineer(kleuren, fruitsoorten)
['een paarse druif', 'een groene appel', 'een gele banaan']
>>> combineer(kleuren, fruitsoorten)
['een paarse appel', 'een gele druif', 'een groene banaan']
>>> combineer(kleuren, fruitsoorten, aantal=1)
['een paarse druif']
>>> combineer(kleuren, fruitsoorten, aantal=2)
['een gele appel', 'een groene banaan']
>>> combineer(kleuren, fruitsoorten, aantal=4)
['een gele banaan', 'een groene druif', 'een paarse appel']