Time limit: 0.1s
Memory limit: 2MB
Input: joc.in
Output: joc.out
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 şi 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 ;
- 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ă mutări. Prin situaţia partidei înţelegem:
- identificarea câştigătorului sau ;
- 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 joc.in
are următorul format:
- pe prima linie o valoare reprezentând numărul de mutări
- pe linia a doua sunt date separate prin spaţiu cărţile jucătorului . Şirul cărţilor acestuia se termină cu valoarea 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 .
Date de ieșire
Fişierul de ieşire joc.out
va conţine trei linii conform următoarelor cazuri posibile:
Câștigă jucătorul | Câștigă jucătorul | Partidă indecisă |
---|---|---|
cărțile lui | cărțile lui | |
cărțile lui | cărțile lui | |
cărțile de pe masă | cărțile de pe masă | cărțile de pe masă |
Dacă pe masă nu sunt cărţi se va afişa valoarea pe linia a treia.
Restricții și precizări
- valoarea unei cărţi
- Pentru datele de test există întotdeauna soluţie.
Exemplu
joc.in
4
1 4 2 3 0
2 1 3 4 0
joc.out
2 3
3 4 1 4 2 1
0
Explicație
- mutarea lui :
- Masa de joc (Cartea pusă de ); : ; :
- mutarea lui :
- Masa de joc ( a pus cartea ); : ; :
- mutarea lui :
- Masa de joc (A a pus cartea ); : ; :
- mutarea lui :
- Masa de joc ( a pus cartea 1); : ; B:
Partida se termină indecis (s-au realizat mutări) va lua cărțile și va avea