Tijdens jeugdwedstrijden van basketbal moeten alle spelers een aantal minuten op het veld staan. Om dat te verzekeren werd de volgende spelregel bedacht: vervangen gebeuren steeds cyclisch. Dat wil zeggen dat er een vaste volgorde is waarin spelers op het veld verschijnen. Een voorbeeld
Veldspelers: Bart, Karel, Piet
Bankspelers: Wesley, Jorge, Vadim, Stacey
Er wordt een vervanging doorgevoerd:
Veldspelers: Karel, Piet, Stacey (←)
Bankspelers: Bart, Wesley, Jorge, Vadim (→)
Er wordt opnieuw een vervanging doorgevoerd:
Veldspelers: Piet, Stacey, Vadim (←)
Bankspelers: Karel Bart, Wesley, Jorge (→)
De veld- en bankspelers worden in deze oefening voorgesteld door een lijst van namen. Vooraan de lijst staan de veldspelers en achteraan staan de bankspelers.
["Bart", "Karel", "Piet", "<|>", "Wesley", "Jorge", "Vadim", "Stacey"]
Je ziet dat "<|>" de scheiding vormt tussen het veld en de bank. De twee vervangen hierboven resulteren dus in de
volgende lijsten:
["Karel", "Piet", "Stacey", "<|>", "Bart", "Wesley", "Jorge", "Vadim"]
["Piet", "Stacey", "Vadim", "<|>", "Karel", "Bart", "Wesley", "Jorge"]
Let dus op:
Programmeer de functie vervangingen(). De functie neemt twee argumenten:
"<|>". Ga ervan uit dat er minstens 1 veldspeler en minstens 1
bankspeler is.De functie geeft de lijst terug van spelers nadat \(n\) vervangingen doorgevoerd werden volgens bovenstaande regels.
>>> vervangingen(["Bart", "Karel", "Piet", "Wesley", "<|>", "Jorge", "Vadim", "Stacey"], 3)
["Wesley", "Stacey", "Vadim", "Jorge", "<|>", "Piet", "Karel", "Bart"]