#1805
expeditie
Rufus pleacă din punctul de linie 1
și coloană 1
al matricei, iar Rufia îl asteaptă în punctul de linie N
și coloană M
. Fiind un teren accidentat, acesta consumă o anumită energie și un anumit timp pentru a ajunge dintr-un punct în unul din cele maxim 8
puncte vecine ale sale, cu condiția să rămână în interiorul spațiului bine delimitat.
Energia consumată pentru a ajunge în punctul de linie i
și coloană j
din unul din punctele sale vecine este dată de valoarea lui | A[i][j] |
(valoarea lui A[i][j]
în modul ), iar timpul consumat pentru a ajunge în acest punct dintr-un punct vecin este dat de valoarea T[i][j]
.
Ajutați-l pe Rufus să ajungă la prietena sa Rufia în cel mai scurt timp posibil și găsiți, de asemenea, capacitatea fizică inițială minimă, știind că aceasta poate fi cel mult K
.
Concursul de Informatica "Spiru Haret" Targu Jiu, ed. I
Problema | expeditie | Operații I/O |
expeditie.in /expeditie.out
|
---|---|---|---|
Limita timp | 1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #55185470 | Utilizator | |
Fișier | expeditie.cpp | Dimensiune | 2.16 KB |
Data încărcării | 04 Ianuarie 2025, 15:41 | Scor / rezultat | Eroare de compilare |
expeditie.cpp: In function 'int main()': expeditie.cpp:46:14: error: expected unqualified-id before '[' token auto [time, x, y, energy] = pq.top(); ^ expeditie.cpp:50:13: error: 'x' was not declared in this scope if (x == N - 1 && y == M - 1) { ^ expeditie.cpp:50:27: error: 'y' was not declared in this scope if (x == N - 1 && y == M - 1) { ^ expeditie.cpp:51:21: warning: the address of 'time_t time(time_t*)' will always evaluate as 'true' [-Waddress] fout << time << "\n"; ^ expeditie.cpp:52:25: error: 'energy' was not declared in this scope fout << K - energy << "\n"; ^ expeditie.cpp:58:22: error: 'x' was not declared in this scope int nx = x + dx[d]; ^ expeditie.cpp:59:22: error: 'y' was not declared in this scope int ny = y + dy[d]; ^ expeditie.cpp:65:56: error: 'energy' was not declared in this scope int new_energy = (A[nx][ny] < 0) ? K : energy - cost_energy; ^ expeditie.cpp:67:43: warning: pointer to a function used in arithmetic [-Wpointer-arith] int new_time = time + cost_time; ^ expeditie.cpp:67:41: error: invalid conversion from 'time_t (*)(time_t*)throw () {aka long int (*)(long int*)throw ()}' to 'int' [-fpermissive] int new_time = time + cost_time; ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema expeditie face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:
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ă.