Zgłaszanie | Wszystkie zgłoszenia | Najlepsze | Lista |
MWP2_3E - Piłeczka |
Wyobraź sobie piłkę stworzoną z bardzo elastycznego tworzywa. Jeżeli rzuciłbyś nią o ścianę w zamkniętym pomieszczeniu to odbijałaby się ona od ścian w nieskończoność. Powstaje więc pytanie jak zatrzymać to perpetuum mobile? No cóż, w tym przypadku do sprawy należy podejść naukowo. Znając współrzędne z których wprawiliśmy piłeczkę w ruch oraz kierunek, w którym ją rzuciliśmy wystarczy obliczyć gdzie piłeczka odbije się za n-tym razem i wysmarować to miejsce klejem :-) Gdy piłeczka trafi na takie miejsce, przyklei się i po problemie.
Janek chciałby pobawić się piłką, ma nawet specjalne pomieszczenie o wymiarach a × b. Niestety chłopak nie jest w stanie określić w którym miejscu nastąpi n-te odbicie piłki jeżeli wyrzuci ją z pola o współrzędnych x, y. Pomóż mu rozwiązać ten problem. Należy przyjąć, że piłeczka zostaje wyrzucona w kierunku wzrostu wartości współrzędnych. Wyjątkiem od tej reguły jest sytuacja kiedy którakolwiek ze współrzędnych pozycji startowej ma wartość maksymalną. W takim wypadku piłeczka będzie poruszać się w kierunku malejących wartości danej współrzędnej. Kąt pomiędzy kierunkiem lotu piłeczki a ścianą zawsze wynosi 45 stopni. Ponieważ piłeczka jest bardzo mała może trafić idealnie w sam róg. W związku z tym każde odbicie od rogu należy liczyć jako pojedyncze, a nie jako dwa odbicia od sąsiadujących ścian.
Wejście
W pierwszej linii wejścia znajduje się jedna liczba naturalna Z (1 ≤ Z ≤ 10) określająca ilość zestawów danych. W kolejnych liniach znajduje się Z zestawów danych.
W pierwszej linii zestawu danych znajdują się cztery liczby naturalne a, b, x, y (1 ≤ a, b ≤ 106; 1 ≤ x ≤ a; 1 ≤ y ≤ b) oznaczające odpowiednio rozmiar pokoju i współrzędne pola z którego wyrzucamy piłeczkę. W kolejnej linii znajduje się jedna liczba naturalna q (1 ≤ q ≤ 30000) określająca ilość zapytań o pola odbicia piłeczki. W kolejnych q liniach znajdują się zapytania. Każde zapytanie składa się jednej liczby naturalnej n (1 ≤ n ≤ 2×109) oznaczającej numer odbicia piłeczki, którego współrzędnych szukamy.
Wyjście
Dla każdego zapytania należy wypisać w osobnej linii współrzędne n-tego odbicia piłeczki.
Przykład
Wejście:
3 9 6 1 6 3 1 2 3 9 6 9 5 4 1 2 3 4 9 6 6 1 5 1 2 3 4 5
Wyjście:
6 1 9 4 7 6 8 6 3 1 1 3 4 6 9 4 7 6 2 1 1 2 5 6
Dodane przez: | Maciej Boniecki |
Data dodania: | 2010-01-23 |
Limit czasu wykonania programu: | 1s-2s |
Limit długości kodu źródłowego | 50000B |
Limit pamięci: | 1536MB |
Cluster: | Cube (Intel G860) |
Języki programowania: | All except: ASM64 GOSU |
Pochodzenie: | II Mistrzostwa WWSI w Programowaniu |