MSTRMND - Mastermind

Zadanie (reguły gry) polega na odgadnięciu 4-elementowego kodu. Każdy z elementów kodu może przyjmować jedną z 6 różnych wartości. Te same wartości mogą się wielokrotnie powtarzać. Kod trzeba odgadnąć w maksymalnie 10 próbach. Po odgadnięciu kodu (lub wyczerpaniu limitu 10 prób) Twój program powinien się zakończyć.

Wejście/Wyjście

W każdej próbie podajesz propozycje kodu - wypisujesz na standarowe wyjście cztery liczby z zakresu 1..6. w odpowiedzi otrzymujesz podpowiedź które elementy zostały wytypowane poprawnie a które nie - wczytujesz ze standardowego wejścia cztery liczby o możliwych wartościach: 1 (trafione), 0 (element nie na swoim miejscu) lub -1 (pudło).

Przykład

You:    1  1  1  2
Judge:  1  1 -1  1

You:	3  4  5  6
Judge: -1 -1 -1  0

You:	1  1  6  2
Judge:	1  1  1  1

Uwaga: Program po wypisaniu każdej linii powinien opróżniać bufor wyjściowy np. poleceniem fflush(stdout), bądź też na początku wykonania ustawić odpowiedni tryb buforowania, np. setlinebuf(stdout).


Added by:japi
Date:2010-09-19
Time limit:1s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ASM64

hide comments
2021-02-08 17:36:45
To avoid WA, print space between outputs

Last edit: 2021-02-08 17:41:04
2020-11-18 22:44:58 Simes
@nadstratosfer - I agree. Like you, I got AC with simple code that didn't even use all the available information. When I tried a more rigorous approach, I get WA. Adding an assert showed there were no valid guesses remaining.
2019-07-18 22:36:35
There's something wrong with this problem. I got AC with a somewhat dumb code, but a smarter algo using 3-5 queries to guess the answer keeps getting WA. The algo prunes the space of all possible configurations based on judge responses, and according to my experiments here, sometimes runs out of valid guesses already after second query. I wrote a tester that runs my solution against all 1296 configurations and, except for cases used for first 2 queries, this never happens. The only way I could explain this is that the judge lies sometimes.

Had a blast revisiting this game after 30+ years anyway.
2017-05-09 20:38:40
can someone please check my code source id:
19373877


Last edit: 2017-05-09 20:39:00
2015-01-11 09:18:18 dante
I am getting Internal Error, why?
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.