joc

Time limit: 0.3s Memory limit: 64MB Input: joc.in Output: joc.outPoints by default: 10p

Inspiraţi de clasicul joc Tic-Tac-Toe (X şi 0), Teodora şi Ştefan îşi propun să joace ceva asemănător, adăugând jocului clasic câteva reguli noi:

  • tabla de joc este un pătrat de latură NN, care este împărţit în NNN \cdot N celule, aşezate pe NN linii şi NN coloane; celulele pătratului sunt numerotate de la 11 la N2N^2 parcurgând liniile de sus în jos, și coloanele de la stânga la dreapta;
  • Teodora va marca celulele cu X (litera X), iar Ştefan cu 0 (cifra 0);
  • în cadrul unei runde, copiii marchează alternativ câte o celulă din pătrat, nemarcată anterior;
  • o rundă a jocului este descrisă printr-un șir format din exact N2N^2 numere naturale reprezentând celulele pătratului, în ordinea în care au fost marcate succesiv de cei doi copii;
  • jocul are KK runde; prima este începută de Teodora, a doua de Ştefan, a treia Teodora, a patra Ştefan şi aşa mai departe;
  • o rundă este câştigată de jucătorul care reuşeşte primul să marcheze complet o linie, o coloană, diagonala principală sau una din cele două semidiagonale paralele şi alăturate cu aceasta (figura 11), diagonala secundară sau una din cele două semidiagonale paralele şi alăturate acesteia (figura 22);
  • o rundă se încheie fără un câştigător dacă după marcarea celor N2N^2 celule nu există pe tabla de joc nicio linie, coloană, diagonală sau semidiagonală marcate cu acelaşi simbol.

Cerință

Cunoscând numerele N,KN, K şi cele KK şiruri de numere care reprezintă rundele jucate, scrieţi un program care să rezolve una dintre următoarele două cerinţe:

  1. Să se determine câte runde a câştigat fiecare copil.
  2. Să se determine care este cel mai mare număr de marcări efectuate până la câştigarea unei runde.

Date de intrare

Fişierul de intrare joc.in conţine pe prima linie un număr natural CC. Pentru toate testele, CC poate lua numai valorile 11 sau 22. Pe a doua linie se află două numere naturale NN şi KK, separate prin câte un spaţiu, reprezentând dimensiunea tablei de joc şi respectiv numărul de runde jucate. Pe următoarele KK linii sunt descrise rundele de joc, câte o rundă pe câte o linie a fișierului. În cadrul liniilor, numerele sunt separate prin câte un spațiu.

Date de ieșire

Dacă valoarea lui CC este 11, se va rezolva numai punctul 11 din cerințe. În acest caz, fişierul de ieşire joc.out va conţine pe prima linie două numere naturale tt şi ss, separate printr-un spaţiu, unde tt reprezintă numărul de runde câştigate de Teodora, iar ss numărul rundelor câştigate de Ştefan.

Dacă valoarea lui CC este 22, se va rezolva numai punctul 22 din cerințe. În acest caz, fişierul de ieşire joc.out va conţine pe prima linie numărul cel mai mare de marcări efectuate până la câştigarea unei runde.

Restricții și precizări

  • 3N1003 \leq N \leq 100;
  • 1K251 \leq K \leq 25;
  • La fiecare joc se câştigă cel puţin o rundă.
  • Pentru rezolvarea corectă a primei cerinţe se acordă 4545 de puncte, iar pentru rezolvarea corectă a celei de a doua cerințe se acordă 4545 de puncte. Se acordă 1010 puncte din oficiu.

Exemplul 1

joc.in

1
4 4
16 13 15 9 10 1 5 2 6 14 3 7 11 4 8 12
1 2 3 4 5 6 7 8 12 11 10 9 13 14 15 16
1 5 9 6 2 7 3 8 4 10 11 12 13 14 15 16
1 2 3 4 8 7 6 5 12 11 10 9 16 15 14 13

joc.out

2 1

Explicație

Ilustrarea rundelor de joc până la momentul identificării unui câștigător este următoarea:

Exemplul 2

joc.in

2
4 4
16 13 15 9 10 1 5 2 6 14 3 7 11 4 8 12
1 2 3 4 5 6 7 8 12 11 10 9 13 14 15 16
1 5 9 6 2 7 3 8 4 10 11 12 13 14 15 16
1 2 3 4 8 7 6 5 12 11 10 9 16 15 14 13

joc.out

14

Explicație

Doar 33 dintre cele 44 runde jucate au fost câştigate. Până în momentul câştigării în prima rundă s-au făcut 77 marcări, în a doua 1414, iar în a treia 88. Deci numărul maxim de marcări făcute până la câştigarea unei runde este 1414.

Log in or sign up to be able to send submissions!