|
IX Olimpiada Informatyczna 2001/2002
|
Zadanie: sup
|
Autor: Krzysztof Onak
|
Superskoczek
Plik źródłowy: | sup.??? (np. pas, c, cpp) |
Plik wykonywalny: | sup.exe |
Plik wejściowy: | sup.in |
Plik wyjściowy: | sup.out |
Na nieskończonej szachownicy znajduje się superskoczek,
który może
wykonywać różnego rodzaju ruchy.
Każdy rodzaj ruchu jest określony za
pomocą dwóch liczb całkowitych - pierwsza mówi o ile kolumn (w prawo
w przypadku liczby dodatniej lub w lewo w przypadku liczby ujemnej), a
druga o ile wierszy (do przodu w przypadku liczby dodatniej lub do tyłu w
przypadku liczby ujemnej) przesuwa się skoczek wykonując taki ruch.
Zadanie
Napisz program, który:
- wczyta z pliku tekstowego
sup.in
zestawy danych opisujące różne
superskoczki,
- dla każdego superskoczka stwierdzi, czy za pomocą swoich ruchów
może dotrzeć do każdego pola na planszy,
- zapisze wynik do pliku tekstowego
sup.out
.
Wejście
W pierwszym wierszu pliku tekstowego sup.in znajduje
się jedna liczba
całkowita k określająca liczbę
zestawów danych, 1<=k<=100. Po niej
następuje k zestawów danych.
W pierwszym wierszu każdego z nich
pojawia się liczba całkowita n będąca liczbą
rodzajów ruchów, które może
wykonywać superskoczek, 1<=n<=100.
Każdy z kolejnych n wierszy
zestawu danych zawiera dwie liczby całkowite p i q oddzielone
pojedynczym odstępem, opisujące ruch,
-100<=p, q<=100.
Wyjście
Plik tekstowy sup.out powinien składać się
z k wierszy. Wiersz i-ty
powinien zawierać jedno słowo TAK ,
jeśli superskoczek opisany w i-tym
zestawie danych może dotrzeć
do każdego pola na planszy, a słowo NIE
w przeciwnym przypadku.
Przykład
Dla pliku wejściowego sup.in :
2
3
1 0
0 1
-2 -1
5
3 4
-3 -6
2 -2
5 6
-1 4
poprawną odpowiedzią jest plik wyjściowy sup.out
:
TAK
NIE
|