Witam. Problem jest chyba stosunkowo prosty, jeżeli ktoś go przeniesie do działu Newbie, to się nie obrażę. Zaznaczam, że nie jest to żadne zadanie domowe, ani nic w tym stylu.
Znam
- współrzędne punktu początkowego: curX, curY.
- współrzędne punktu końcowego: tarX, tarY.
do dyspozycji mam:
- czas całkowity tc
- czas przerwy X pauseX
- czas przerwy Y pauseY.
Pisak przez tc sekund* w odstępach pauseX sekund wykonuje kroki wzdłuż osi X i w odstępach pauseY sekund wykonuje kroki wzdłuż osi Y...
*) oczywiście słowo "sekunda" zostało użyte umownie.
Jeżeli to zbyt zagmatwane, to przykład:
tc = 199; pauseX = 20; pauseY = 50
Pisak w 20 i 40 sekundzie przesuwa się wzdłuż osi X
w 50 sekundzie wzdłuż osi Y
w 60, 80 sekundzie wzdłuż osi X
w 100 sekundzie X i Y
w 120,140 sekundzie X
i tak dalej
powstaje nam mniej-więcej taka linia:
**
**
***
**
***
**
Problem polega na takim ustawieniu wartości tc, pauseX, pauseY, aby pisak przemieścił się z punktu początkowego do końcowego (w praktyce - aby przesunął się o zadany wektor), rysując po drodze maksymalnie prostą linię.
Ograniczenia: wartości tc, pauseX, pauseY są całkowite. Czas tc powinien być w miarę możliwości jak najkrótszy*. Czasy pauseX, pauseY nie mogą być mniejsze, niż 20 dla osi X, i 30 dla osi Y.
*)Najkrótszy, z akcentem na "w miarę możliwości".
Jeżeli ktoś ma jakiś pomysł, jak to wyliczyć, albo chociaż podsunie hasło do googla, to będę wdzięczny.
Jeżeli komuś się problem spodobał, to mam dla niego kolejny.