Misschien is een mooie trick shot toch niet zo’n goed idee. Je hebt ten slotte maar één sonde, dus je kan beter het doel niet missen.

Om het beste idee te krijgen van wat je opties zijn om de sonde af te vuren, moet je elke beginsnelheid vinden die ervoor zorgt dat de sonde zich tijdens één van de stappen binnen het doelgebied bevindt.

In het voorgaande voorbeeld zijn er 112 verschillende beginsnelheden die aan deze criteria voldoen:

23,-10  25,-9   27,-5   29,-6   22,-6   21,-7   9,0     27,-7   24,-5
25,-7   26,-6   25,-5   6,8     11,-2   20,-5   29,-10  6,3     28,-7
8,0     30,-6   29,-8   20,-10  6,7     6,4     6,1     14,-4   21,-6
26,-10  7,-1    7,7     8,-1    21,-9   6,2     20,-7   30,-10  14,-3
20,-8   13,-2   7,3     28,-8   29,-9   15,-3   22,-5   26,-8   25,-8
25,-6   15,-4   9,-2    15,-2   12,-2   28,-9   12,-3   24,-6   23,-7
25,-10  7,8     11,-3   26,-7   7,1     23,-9   6,0     22,-10  27,-6
8,1     22,-8   13,-4   7,6     28,-6   11,-4   12,-4   26,-9   7,4
24,-10  23,-8   30,-8   7,0     9,-1    10,-1   26,-5   22,-9   6,5
7,5     23,-6   28,-10  10,-2   11,-1   20,-9   14,-2   29,-7   13,-3
23,-5   24,-8   27,-9   30,-7   28,-5   21,-10  7,9     6,6     21,-5
27,-10  7,2     30,-9   21,-8   22,-7   24,-9   20,-6   6,9     29,-5
8,-2    27,-8   30,-5   24,-7

Opgave

Hoeveel verschillende beginsnelheden zijn er waarvoor de sonde zich tijdens één van de stappen binnen het doelgebied bevindt? Bepaal dit op de volgende manier:

Voorbeeld

In deze interactieve sessie gaan we ervan uit dat de tekstbestanden target01.txt1 en target02.txt2 zich in de huidige directory bevinden.

>>> shoot('target01.txt')
112
>>> shoot('target02.txt')
1546

Epilogue

Nazarii Bardiuk (@nbardiuk3) mikt zeker en vast met stijl.