In the event of technical difficulties with Szkopuł, please contact us via email at [email protected].
If you are familiar with IRC chat, the support team is also reachable on PIRC network (irc.pirc.pl
) in #szkopul
channel. If you are not, just use email.
Please do not ask us things like "how to solve task XYZ?".
Please remember that the support team has to sleep sometimes or go to work in real life.
W tym zadaniu interesować nas będą dzielniki pewnej liczby naturalnej .
Oznaczmy zbiór wszystkich tych dzielników przez
.
Dane jest wyrażenie, składające się ze stałych ze zbioru
, zmiennych mogących przyjmować
dowolne wartości ze zbioru
oraz dwuargumentowych funkcji obliczających największy wspólny
dzielnik oraz najmniejszą wspólną wielokrotność.
Dla podanego wyrażenia należy stwierdzić, czy jego wartość jest stała niezależnie od wartości zmiennych.
W pierwszym wierszu standardowego wejścia znajduje się liczba całkowita (
) oznaczająca liczbę zestawów danych.
W każdym z kolejnych
wierszy znajduje się opis jednego zestawu danych.
Każdy taki opis rozpoczyna się liczbą całkowitą
(
).
Po niej następuje opis wyrażenia.
Wyrażenie jest stałą, zmienną lub funkcją.
Każda liczba w opisie oznacza stałą.
Wszystkie liczby są dodatnimi dzielnikami .
Zmienne reprezentowane są przez ciągi co najwyżej 5 małych liter alfabetu angielskiego. Utożsamiamy zmienne reprezentowane przez takie same ciągi liter.
Ciągi znaków NWD i NWW oznaczają odpowiednio funkcje zwracające największy wspólny dzielnik oraz najmniejszą wspólną wielokrotność. Po nazwie funkcji następuje pojedynczy odstęp, a po nim oddzielone odstępem opisy dwóch argumentów, które są wyrażeniami (a zatem opis jest rekurencyjny).
Można założyć, że sumaryczny rozmiar pliku wejściowego nie przekroczy 2 MB.
Na standardowe wyjście należy wypisać wierszy, zawierających odpowiedzi dla kolejnych zestawów danych.
Odpowiedzią dla jednego zestawu jest słowo TAK lub NIE, w zależności od tego, czy
wyrażenie opisane w zestawie reprezentuje funkcję stałą.
Dla danych wejściowych:
3 24 NWD 3 NWW x 12 15 NWD 15 nwd 10 10
poprawną odpowiedzią jest:
TAK NIE TAK
Autor zadania: Dariusz Leniowski.