OpenKattis
Stockholmsmästerskapen 2016

Start

2016-01-30 09:30 CET

Stockholmsmästerskapen 2016

End

2016-01-30 14:30 CET
The end is near!
Contest is over.
Not yet started.
Contest is starting in -3218 days 3:06:17

Time elapsed

5:00:00

Time remaining

0:00:00

Problem G
3-i-rad

Mårten är extremt duktig på 3-i-rad. Så duktig att du aldrig lyckas slå honom! Skriv ett datorprogram som spelar 3-i-rad åt dig, så du kanske har en chans.

Om du inte vet vad 3-i-rad är, kan du läsa om hur spelet fungerar på Wikipedia.

Indata och utdata

Detta problem är interaktivt. Du ska först läsa en rad som innehåller antingen first or second - detta säger om du ska dra först eller inte.

Varje gång du ska dra ska du läsa in ett 3-i-rad-bräde med draget Mårten gjorde (eller ett blankt bräde för det allra första draget), och sedan skriva ut ett 3-i-rad-bräde med draget du gjorde.

Om du skriver ut ett bräde där du vinner eller spelar oavgjort ska ditt program avslutas. Om du läser in ett bräde där Mårten vunnit eller spelat oavgjort ska ditt program avslutas.

Ett bräde ska skrivas ut och läsas in som 3 rader med 3 tecken vardera - antingen . för tom ruta, o för Mårtens pjäser, eller x för dina pjäser (obs: små bokstäver).

Exempel

I exemplet nedan spelar Mårten först. Mårtens utskrift är i fetstil.
second
..o
...
...
..o
.x.
...
.oo
.x.
...
xoo
.x.
...
xoo
.xo
...
xoo
.xo
..x

Efter det sista draget vann du mot Mårten, och ska därmed avsluta ditt program.

Poäng

  1. du ska spela ett giltigt spel.

  2. du ska aldrig förlora mot Mårten.

  3. du ska alltid vinna ett spel om det går.

  4. du ska aldrig förlora mot Mårten, och du ska alltid vinna ett spel om det går.