Om definitief te bepalen of je voldoende adapters hebt, wil je uitzoeken op hoeveel verschillende manieren je ze met elkaar kunt verbinden. Elke verbinding moet het stopcontact op je laptop aansluiten. De voorgaande regels over hoe je de adapters met elkaar kunt verbinden zijn nog steeds van toepassing.
In het eerste voorbeeld (dat begint met de voltages 16
, 10
, 15
) kan je de volgende verbindingen maken:
(0), 1, 4, 5, 6, 7, 10, 11, 12, 15, 16, 19, (22)
(0), 1, 4, 5, 6, 7, 10, 12, 15, 16, 19, (22)
(0), 1, 4, 5, 7, 10, 11, 12, 15, 16, 19, (22)
(0), 1, 4, 5, 7, 10, 12, 15, 16, 19, (22)
(0), 1, 4, 6, 7, 10, 11, 12, 15, 16, 19, (22)
(0), 1, 4, 6, 7, 10, 12, 15, 16, 19, (22)
(0), 1, 4, 7, 10, 11, 12, 15, 16, 19, (22)
(0), 1, 4, 7, 10, 12, 15, 16, 19, (22)
(Het stopcontact en de ingebouwde adapter van je laptop staan tussen ronde haakjes.) Met de adapters uit het eerste voorbeeld kan je op 8
verschillende manieren je laptop aansluiten op het stopcontact.
In het tweede voorbeeld (dat begint met de voltages 28
, 33
, 18
) zijn er heeft veel verschillende verbindingen mogelijk. Hier zijn er een paar:
(0), 1, 2, 3, 4, 7, 8, 9, 10, 11, 14, 17, 18, 19, 20, 23, 24, 25, 28, 31,
32, 33, 34, 35, 38, 39, 42, 45, 46, 47, 48, 49, (52)
(0), 1, 2, 3, 4, 7, 8, 9, 10, 11, 14, 17, 18, 19, 20, 23, 24, 25, 28, 31,
32, 33, 34, 35, 38, 39, 42, 45, 46, 47, 49, (52)
(0), 1, 2, 3, 4, 7, 8, 9, 10, 11, 14, 17, 18, 19, 20, 23, 24, 25, 28, 31,
32, 33, 34, 35, 38, 39, 42, 45, 46, 48, 49, (52)
(0), 1, 2, 3, 4, 7, 8, 9, 10, 11, 14, 17, 18, 19, 20, 23, 24, 25, 28, 31,
32, 33, 34, 35, 38, 39, 42, 45, 46, 49, (52)
(0), 1, 2, 3, 4, 7, 8, 9, 10, 11, 14, 17, 18, 19, 20, 23, 24, 25, 28, 31,
32, 33, 34, 35, 38, 39, 42, 45, 47, 48, 49, (52)
(0), 3, 4, 7, 10, 11, 14, 17, 20, 23, 25, 28, 31, 34, 35, 38, 39, 42, 45,
46, 48, 49, (52)
(0), 3, 4, 7, 10, 11, 14, 17, 20, 23, 25, 28, 31, 34, 35, 38, 39, 42, 45,
46, 49, (52)
(0), 3, 4, 7, 10, 11, 14, 17, 20, 23, 25, 28, 31, 34, 35, 38, 39, 42, 45,
47, 48, 49, (52)
(0), 3, 4, 7, 10, 11, 14, 17, 20, 23, 25, 28, 31, 34, 35, 38, 39, 42, 45,
47, 49, (52)
(0), 3, 4, 7, 10, 11, 14, 17, 20, 23, 25, 28, 31, 34, 35, 38, 39, 42, 45,
48, 49, (52)
In totaal kan je met deze lijst van adapter het stopcontact met je laptop op 19208
verschillende manieren met elkaar verbinden.
Je kijkt weer naar je rugzak en vraagt je af waarom je in godsnaam zoveel adapters hebt meegenomen. Er moeten wel meer dan een biljoen verschillende manieren zijn om ze met elkaar te verbinden! Er moet beslist een efficiënte manier zijn om het aantal mogelijke verbindingen te tellen.
Op hoeveel verschillende manieren kan je de adapters met elkaar verbinden om je laptop op het stopcontact aan te sluiten? Hiervoor ga je als volgt te werk:
arrangements
waaraan de padnaam (String
) moet doorgegeven worden van een tekstbestand met voltages van een lijst van adapters (één per regel). De functie moet teruggeven op hoeveel (int
) verschillende manieren je de adapters met elkaar kan verbinden om je laptop op het stopcontact aan te sluiten.Deze statische functie moet zich in de klasse Submission
bevinden.
In deze interactieve sessie gaan we ervan uit dat het tekstbestanden adapters1.txt
1 en adapters2.txt
2 zich in de huidige directory bevinden.
> Submission.arrangements("adapters1.txt")
8
> Submission.arrangements("adapters2.txt")
19208