#1871
UbuPH
Într-o zi telefonul lui Max s-a stricat.Văzând o reclamă la noul telefon cu sistemul de operare Ubuntu, s-a gândit să achiziționeze și el unul.
Drumul de la casa lui la magazin poate fi reprezentat ca o matrice cu n
linii și m
coloane. În fiecare element al matricei este o barieră; pentru a trece de bariere trebuie plătită o sumă de bani, care nu este aceeași pentru fiecare barieră și poate fi chiar 0
.
Casa lui se află pe coordonatele (ic,jc)
, iar magazinul la coordonatele (im,jm)
.
Pentru că trebuie să cumpere telefonul, este nevoie ca drumul lui sa fie cât mai puțin costisitor, plătind la bariere o sumă totală minimă.
Problema | UbuPH | Operații I/O |
ubuph.in /ubuph.out
|
---|---|---|---|
Limita timp | 1.3 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #42578094 | Utilizator | |
Fișier | ubuph.cpp | Dimensiune | 2.05 KB |
Data încărcării | 10 Martie 2023, 19:45 | Scor / rezultat | 60 puncte |
ubuph.cpp: In function 'void dijkstra(int)': ubuph.cpp:37:34: warning: narrowing conversion of 'minDist[source]' from 'long long int' to 'int' inside { } [-Wnarrowing] pq.push(Vertex{minDist[source], source}); ^ ubuph.cpp:55:41: warning: narrowing conversion of 'minDist[v]' from 'long long int' to 'int' inside { } [-Wnarrowing] pq.push(Vertex{minDist[v], v}); ^ ubuph.cpp: In function 'int main()': ubuph.cpp:79:55: warning: narrowing conversion of '((((long long int)i) * m) + ((long long int)j))' from 'long long int' to 'int' inside { } [-Wnarrowing] neighbours[i2*m+j2].push_back({i*m+j,v[i][j]}); ^ ubuph.cpp:79:64: warning: narrowing conversion of 'v[i][j]' from 'long long int' to 'int' inside { } [-Wnarrowing] neighbours[i2*m+j2].push_back({i*m+j,v[i][j]}); ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
1 | 0.236 secunde | Caught fatal signal 11 | 20 | 0 | ||
2 | 0.004 secunde | OK. | 20 | 20 | ||
3 | 0.072 secunde | OK. | 20 | 20 | ||
4 | 0.004 secunde | OK. | 15 | 15 | ||
5 | 0.004 secunde | Raspuns gresit. | 20 | 0 | ||
6 | 0.004 secunde | OK. | 5 | 5 | ||
Punctaj total | 60 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema UbuPH 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ă.