Detalii evaluare #8185690

Rezumat problemă

#1998 Rover

NASA plănuiește o nouă misiune Rover pe Marte în anul 2020. Principalul obiectiv al acestei misiuni este de a determina, cu ajutorul unui nou Rover, dacă a existat în trecut viață pe Marte. Până când va fi lansată misiunea, Roverul este supus la tot felul de teste în laboratoarele NASA. Într-unul din teste, Roverul trebuie să parcurgă o suprafață de forma unui caroiaj cu N linii și N coloane. Acesta pornește din zona de coordonate (1,1) și trebuie să ajungă în zona de coordonate (N,N), la fiecare pas putându-se deplasa din zona în care se află într-una din zonele învecinate la nord, sud, est sau vest. Pentru fiecare zonă de coordonate (i,j) se cunoaște A[i,j], stabilitatea terenului din acea zonă. Știind că Roverul are o greutate G, o zonă cu stabilitatea terenului cel puțin egală cu G se consideră o zonă sigură pentru deplasarea Roverului, iar o zonă cu stabilitatea terenului mai mică decât G se consideră o zonă periculoasă pentru Rover.

1. Determinați numărul minim posibil de zone periculoase pe care le traversează Roverul pentru a ajunge din zona (1,1) în zona (N,N).
2. Determinați greutatea maximă pe care o poate avea un Rover care să ajungă din zona (1,1) în zona (N,N), fără a traversa nicio zonă periculoasă pentru el.

Detalii

Problema Rover Operații I/O rover.in/rover.out
Limita timp 0.5 secunde Limita memorie Total: 64 MB / Stivă 32 MB
Id soluție #8185690 Utilizator Tudora Stefan (StefanTudora)
Fișier rover.cpp Dimensiune 3.42 KB
Data încărcării 05 Februarie 2018, 13:42 Scor / rezultat 70 puncte

Evaluare


Mesaj compilare

rover.cpp: In function 'void readValues(int*, int*, int*, int (*)[500])':
rover.cpp:70:41: warning: ignoring return value of 'int fscanf(FILE*, const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     fscanf( entryValue, "%d", &( * v ) );

                                         ^
rover.cpp:71:41: warning: ignoring return value of 'int fscanf(FILE*, const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     fscanf( entryValue, "%d", &( * n ) );

                                         ^
rover.cpp:73:44: warning: ignoring return value of 'int fscanf(FILE*, const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         fscanf(entryValue, "%d", &( * g ) );

                                            ^
rover.cpp:76:49: warning: ignoring return value of 'int fscanf(FILE*, const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
             fscanf( entryValue, "%d", &A[i][j] );

                                                 ^

Rezultat evaluare

Test Timp Mesaj evaluare Scor posibil Scor obținut
0 0 secunde OK. 10 10
1 0 secunde OK. 5 5
2 0.004 secunde Raspuns gresit. 5 0
3 0.012 secunde Raspuns gresit. 5 0
4 0.02 secunde Raspuns gresit. 5 0
5 0.056 secunde Raspuns gresit. 5 0
6 0.088 secunde Raspuns gresit. 5 0
7 0.096 secunde Raspuns gresit. 5 0
8 0.1 secunde OK. 5 5
9 0 secunde OK. 10 10
10 0 secunde OK. 5 5
11 0.008 secunde OK. 5 5
12 0.024 secunde OK. 5 5
13 0.036 secunde OK. 5 5
14 0.048 secunde OK. 5 5
15 0.056 secunde OK. 5 5
16 0.08 secunde OK. 5 5
17 0.084 secunde OK. 5 5
Punctaj total 70

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 Rover 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ă.