Fişierul intrare/ieşire:joc7.in, joc7.outSursăONI 2008 baraj gimnaziu
AutorAdrian Nita, Maria NitaAdăugată defrancuCristian Francu francu
Timp execuţie pe test0.1 secLimită de memorie1024 kbytes
Scorul tăuN/ADificultatenormalnormalnormalnormalnormal

Vezi solutiile trimise

Joc7 (baraj gimnaziu)

Gigel, pasionat de jocuri de cărţi, dar şi de informatică, îşi propune să realizeze un program care să simuleze un joc de cărţi între doi jucători A şi B după următoarele reguli:

  • jocul se desfăşoară sub forma unei succesiuni de mutări alternative ale celor doi jucători; numărul acestor mutări este stabilit la începutul jocului;
  • iniţial, ambii jucători primesc acelaşi număr de cărţi, într-o anumită ordine; numărul maxim de cărţi primite de un jucător este 1000;
  • printr-o mutare se înţelege punerea unei cărţi pe masă de către unul dintre jucători;
  • jucătorii pun alternativ, pe masă, câte o carte dintre cărţile primite, în ordinea în care le-au primit;
  • în momentul în care un jucător pune pe masă o carte având aceeaşi valoare cu a uneia deja existentă pe masă, acest jucător va lua toate cărţile, aflate pe masă între aceste două cărţi, inclusiv ele, în ordinea inversă faţă de cum au fost puse pe masa de joc; cărţile astfel luate de pe masă sunt puse în teancul de cărţi ale respectivului jucător, după ultima lui carte;
  • câştigă jucătorul care rămâne fără nici o carte în mână, chiar dacă numărul de mutări efectuate până atunci este mai mic decât numărul total de mutări; jocul se încheie indecis dacă după numărul de mutări stabilit ambii jucători mai au cărţi în mână.

Cerinţă

Scrieţi un program care să determine situaţia partidei după n mutări. Prin situaţia partidei înţelegem:

  • identificarea câştigătorului A sau B;
  • identificarea cărţilor pe care le are cel care a pierdut partida, sau în caz indecis a cărţilor celor doi jucători la sfârşitul celor n mutări, precum şi identificarea cărţilor de pe masă, dacă acestea există.

Date de intrare

Fişierul de intrare joc7.in are următorul format:

  • pe prima linie o valoare n reprezentând numărul de mutări
  • pe linia a doua sunt date separate prin spaţiu cărţile jucătorului A. Şirul cărţilor acestuia se termină cu valoarea 0 care nu face parte dintre cărţile lui;
  • pe linia a treia a fişierului de intrare sunt scrise după acelaşi format cărţile jucătorului B.

Date de ieşire

Fişierul de ieşire joc7.out va conţine trei linii conform următoarelor cazuri posibile:

Câştigă jucătorul ACâştigă jucătorul BPartidă indecisă
A
cărţile lui B
cărţile de pe masă
cărţile lui A
B
cărţile de pe masă
cărţile lui A
cărţile lui B
cărţile de pe masă

Dacă pe masă nu sunt cărţi se va afişa valoarea 0 pe linia a treia.

Restricţii

  • 1 ≤ N ≤ 250
  • 1 ≤ valoarea unei cărţi ≤ 9
  • Pentru datele de test există întotdeauna soluţie.

Exemplu

joc7.injoc7.outExplicaţie
4
1 4 2 3 0
2 1 3 4 0
2 3
3 4 1 4 2 1
0
mutarea lui A: 1
Masa de joc 1 (Cartea pusă de A);  A: 4 2 3;  B: 2 1 3 4
mutarea lui B: 2
Masa de joc 1 2 (B a pus cartea 2);  A: 4 2 3;  B: 1 3 4
mutarea lui A: 4
Masa de joc 1 2 4 (A a pus cartea 4);  A: 2 3;  B: 1 3 4
mutarea lui B: 1
Masa de joc 1 2 4 1 (B a pus cartea 1); A: 2 3;  B: 3 4
Partida se termină indecis (s-au realizat 4 mutări) B va lua cărţile 1 2 4 1 şi va avea 3 4 1 4 2 1
Trebuie sa te autentifici pentru a trimite solutii. Click aici