Fişierul intrare/ieşire:joc6.in, joc6.outSursăBaraj 2008 gimnaziu
AutorAdrian Nita, Maria NitaAdăugată deraduzerRadu Zernoveanu raduzer
Timp execuţie pe test0.05 secLimită de memorie4736 kbytes
Scorul tăuN/ADificultateN/A

Vezi solutiile trimise | Statistici

Joc6

Gigel, pasionat de jocuri de carti, dar si de informatica, isi propune sa realizeze un program care sa simuleze un joc de carti intre doi jucatori A si B dupa urmatoarele reguli:

  • jocul se desfasoara sub forma unei succesiuni de mutari alternative ale celor doi jucatori; numarul acestor mutari este stabilit la inceputul jocului;
  • initial, ambii jucatori primesc acelasi numar de carti, intr-o anumita ordine; numarul maxim de carti primite de un jucator este 1000;
  • printr-o mutare se intelege punerea unei carti pe masa de catre unul dintre jucatori;
  • jucatorii pun alternativ, pe masa, cate o carte dintre cartile primite, in ordinea in care le-au primit;
  • in momentul in care un jucator pune pe masa o carte avand aceeasi valoare cu a uneia deja existente pe masa, acest jucator va lua toate cartile aflate pe masa intre aceste doua carti, inclusiv ele, in ordinea inversa fata de cum au fost puse pe masa de joc, cartile astfel luate de pe masa sunt puse in teancul de carti ale respectivului jucator, dupa ultima lui carte;
  • castiga jucatorul care ramane fara nici o carte in mana, chiar daca numarul de mutari efectuate pana atunci este mai mic decat numarul total de mutari; jocul se incheie indecis daca dupa numarul de mutari stabilit ambii jucatori mai au carti in mana.

Cerinta

Scrieti un program care sa determine situatia partidei dupa n mutari. Prin situatia partidei intelegem:

  • identificarea castigatorului A sau B;
  • identificarea cartilor pe care le are cel care a pierdut partida, sau in caz indecis a cartilor celor doi jucatori la sfarsitul celor n mutari, precum si identificarea cartilor de pe masa, daca acestea exista.

Date de intrare

Fisierul de intrare joc6.in are urmatorul format:

  • pe prima linie o valoare n reprezentand numarul de mutari;
  • pe a doua sunt date separate prin spatiu cartile jucatorului A. Sirul cartilor acestuia se termina cu valoarea 0 care nu face parte dintre cartile lui;
  • pe linia a treia a fisierului de intrare sunt scrise dupa acelasi format cartile jucatorului B.

Date de iesire

Fisierul de iesire joc6.out va contine trei linii conform urmatoarelor cazuri posibile:

Castiga jucatorul ACastiga jucatorul BPartida indecisa
A
cartile lui B
cartile de pe masa
cartile lui A
B
cartile de pe masa
cartile lui A
cartile lui B
cartile de pe masa

Daca pe masa nu sunt carti se va afisa valoarea 0 pe linia a treia.

Restrictii

  • 1 ≤ N ≤ 250
  • 1 ≤ valoarea unei carti ≤ 9
  • Pentru datele de test exista intotdeauna solutie.

Exemplu

joc6.injoc6.out
4
1 4 2 3 0
2 1 3 4 0
2 3
3 4 1 4 2 1
0

Explicatie

mutarea lui A: 1
Masa de joc 1( Cartea pusa 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 termina indecis ( s-au realizat 4 mutari ) B va lua cartile 1 2 4 1 si va avea 3 4 1 4 2 1

Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?

remote content