Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

FR_16_13 - Gra w odejmowanie

Kolejna nudna podróż samochodem? Może zagramy w grę: wybieramy trzy liczby a, b i n (0 < a < b < 1000, n < 106, n > a + b). Na zmianę zmniejszamy n o dowolną wartość z przedziału a do b (włącznie), tak aby po zmianie pozostało nieujemne. Przegrywa ten, kto nie może wykonać swojego ruchu.

Twój przeciwnik to prawdziwy mistrz w tej grze. Zawsze wie jak zagrać optymalnie.

Ty jednak rozpracowałeś to, jak Twój przeciwnik zachowuje się podczas rozgrywki. Zauważyłeś, że jeżeli na początku gry nie może wygrać, to jak tylko zdobędzie przewagę, już jej nie odda. Jeśli jednak ma przewagę na starcie, to na skutek roztargnienia popełni jeden pojedynczy błąd. To Twoja szansa!

Wygraj z mistrzem, niezależnie jakie liczby zostaną wybrane.

Uwaga! To jest zadanie interaktywne, po każdym wypisaniu odpowiedzi należy wyczyścić bufor standardowego wyjścia! W przeciwnym wypadku sędzia nie otrzyma Twojej odpowiedzi, zaś wykonanie programu zakończy się werdyktem przekroczenia limitu czasu. Przykładowo w języku programowania C++ do wyczyszczenia bufora można użyć wywołań: fflush(stdout) lub cout.flush() lub cout << endl. W języku programowania Python służy do tego metoda: sys.stdout.flush().

Każda wypisana liczba musi być zakończona znakiem nowej linii.

Wejście/Wyjście

Na wejściu pojawią się liczby a, b, n i t. Są to odpowiednio: najmniejsza i największa liczba, którą można odjąć, liczba od której zaczynamy odejmowanie oraz znacznik gracza początkowego (1 - Ty, 0 - mistrz).

Następnie rozpoczyna się właściwa rozgrywka. W zależności kto wykonuje pierwszy ruch, ten gracz podaje liczbę z przedziału [a, b], którą chce odjąć od liczby n. Wypisanie liczby z poza zakresu lub większej od n, spowoduje zakończenie gry z wynikiem: Runtime error.

Następnie drugi gracz podaje swoją liczbę. I tak dalej. Gra kończy się, gdy nie można wykonać dozwolonego ruchu. Należy wtedy zakończyć działanie programu.

Gracz musi wygrać wszystkie mecze!

Przykładowa rozgrywka

Mistrz: 1 3 11 1
Gracz: 3
Mistrz: 2
Gracz: 2
Mistrz: 1
Gracz: 3

Słowa Mistrz i Gracz nie pojawiają się na wejściu i nie należy ich wyświetlać.


Dodane przez:Grzegorz Spryszyński
Data dodania:2022-12-16
Limit czasu wykonania programu:1s
Limit długości kodu źródłowego50000B
Limit pamięci:1536MB
Cluster: Cube (Intel G860)
Języki programowania:All except: GOSU

© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.