Detalii evaluare #50772559

Rezumat problemă

RAU-Gigel se gândește la un joc cu piesele de șah. El desenează o tablă de șah sub forma unei matrici pătratice de latură N și așează în fiecare dintre cele N x N celule câte o piesă de șah. Se consideră că dispune de N X N exemplare din fiecare piesă posibilă (regi, regine, ture, nebuni, cai, pioni), iar culoarea nu este relevantă. RAU-Gigel se întreabă care este numărul minim de căsuțe (celule) prin care trebuie să treacă un rege oarecare ca să ajungă la o regină oarecare. Regele se poate deplasa câte o celulă în patru direcții posibile: N, E, S, V.

Dar asta nu e tot. La începutul jocului, toți regii au 16 vieți. Atunci când RAU-Gigel mută un rege (oarecare) peste primul pion, acesta pierde o viață. Vestea bună este că, după aceea, regele respectiv poate lua oricâți pioni fără ca numărul său de vieți să fie afectat. Când ia un cal, regele pierde două vieți, dar după aceea poate lua, fără pierderi, oricâți cai. La fel se întâmplă și în cazul nebunilor, primul nebun îl costa patru vieți și, respectiv al turelor, care îl costă opt vieți.

RAU-Gigel dorește să afle ce rege să aleagă și pe ce traseu trebuie să meargă acesta către o regină oarecare, astfel încât la sfârșitul jocului să îi rămână cât mai multe vieți, iar traseul să fie cât mai scurt.

Detalii

Problema JocDeSah Operații I/O jocdesah.in/jocdesah.out
Limita timp 0.01 secunde Limita memorie Total: 64 MB / Stivă 8 MB
Id soluție #50772559 Utilizator Mihai Alex-Ioan (Alex_Mihai10)
Fișier jocdesah.cpp Dimensiune 1.83 KB
Data încărcării 02 Mai 2024, 09:27 Scor / rezultat 40 puncte

Evaluare


Mesaj compilare

jocdesah.cpp: In function 'int main()':
jocdesah.cpp:66:67: warning: array subscript has type 'char' [-Wchar-subscripts]
                 if(lee[lnou][cnou][cost|(1<<coresp[mat[lnou][cnou]])]>lee[l][c][cost]+1)

                                                                   ^
jocdesah.cpp:68:68: warning: array subscript has type 'char' [-Wchar-subscripts]
                     lee[lnou][cnou][cost|(1<<coresp[mat[lnou][cnou]])]=lee[l][c][cost]+1;

                                                                    ^
jocdesah.cpp:69:70: warning: array subscript has type 'char' [-Wchar-subscripts]
                     q.push({lnou,cnou,cost|(1<<coresp[mat[lnou][cnou]])});

                                                                      ^
jocdesah.cpp:86:14: warning: division by zero [-Wdiv-by-zero]
     return 1/0;

              ^

Rezultat evaluare

Test Timp Mesaj evaluare Scor posibil Scor obținut
0 0 secunde Raspuns gresit. 5 0
1 0 secunde OK. 5 5
2 0 secunde Caught fatal signal 8 5 0
3 0 secunde OK. 5 5
4 0 secunde Caught fatal signal 8 5 0
5 0 secunde OK. 5 5
6 0 secunde Caught fatal signal 8 5 0
7 0 secunde OK. 5 5
8 0 secunde Caught fatal signal 8 5 0
9 0 secunde Caught fatal signal 8 5 0
10 0 secunde Caught fatal signal 8 5 0
11 0 secunde OK. 5 5
12 0 secunde Caught fatal signal 8 5 0
13 0 secunde OK. 5 5
14 0 secunde Caught fatal signal 8 5 0
15 0 secunde OK. 5 5
16 0 secunde Caught fatal signal 8 5 0
17 0 secunde OK. 5 5
18 0 secunde Caught fatal signal 8 5 0
19 0 secunde Caught fatal signal 8 5 0
Punctaj total 40

Cum funcționează evaluarea?

www.pbinfo.ro permite evaluarea a două tipuri de probleme:

  • probleme la care rezolvarea presupune scrierea unui program complet
  • probleme la care rezolvarea presupune scrierea unei secvențe de program - câteva instrucțiuni, o listă de declarații, una sau mai multe funcții, etc.

Problema JocDeSah face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:

  • Programul sursă este compilat folosind compilatorul corespunzător. Dacă în urma compilării se obțin erori sau avertismente, acestea sunt afișate în această pagină.
  • Dacă programul a fost compilat, executabilul obținut va fi rulat, furnizându-i-se unul sau mai multe seturi de date de intrare, în concordanță cu restricțiile specifice problemei. Pentru fiecare set de date se obține un anumit punctaj, în raport cu corectitudinea soluției tale.

Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.