#4443
Steve Stonecutter se află într-o lume formată din cuburi, iar fiecare cub aparține unui singur biom. Cuburile sunt dispuse într-o linie și sunt numerotate de la 1
la N
. Se consideră că blocurile i
și i + 1
sunt vecine între ele pentru toate valorile i
de la 1
la N - 1
. Putem reprezenta această lume ca și un șir de caractere S
de lungime N
format din litere mici ale alfabetului limbii engleze, numerotat de la 1
la N
, unde al i
-lea caracter reprezintă biomul din care face parte al i
-lea cub. Aceste mișcări se pot realiza dacă și numai dacă poziția în care Steve vrea să se deplaseze există. Începând de la cubul 1
, Steve dorește să ajungă la cubul N
cu cost minim, așa că vă roagă pe voi să aflați care este acest cost.
Problema | biom | Operații I/O |
![]() biom.in /biom.out
|
---|---|---|---|
Limita timp | 0.6 secunde | Limita memorie |
Total: 256 MB
/
Stivă 64 MB
|
Id soluție | #57371978 | Utilizator | |
Fișier | biom.cpp | Dimensiune | 1.75 KB |
Data încărcării | 27 Martie 2025, 19:37 | Scor / rezultat | 74 puncte |
biom.cpp: In function 'void dijkstra()': biom.cpp:37:44: warning: array subscript has type 'char' [-Wchar-subscripts] if (pos[current] != idx[id[current]].size()-1 && dist[idx[id[current]][pos[current]+1]] > dist[current]+c){ ^ biom.cpp:37:53: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if (pos[current] != idx[id[current]].size()-1 && dist[idx[id[current]][pos[current]+1]] > dist[current]+c){ ^ biom.cpp:37:78: warning: array subscript has type 'char' [-Wchar-subscripts] if (pos[current] != idx[id[current]].size()-1 && dist[idx[id[current]][pos[current]+1]] > dist[current]+c){ ^ biom.cpp:38:33: warning: array subscript has type 'char' [-Wchar-subscripts] dist[idx[id[current]][pos[current]+1]] = dist[current]+c; ^ biom.cpp:39:42: warning: array subscript has type 'char' [-Wchar-subscripts] pq.push({dist[idx[id[current]][pos[current]+1]], idx[id[current]][pos[current]+1]}); ^ biom.cpp:39:77: warning: array subscript has type 'char' [-Wchar-subscripts] pq.push({dist[idx[id[current]][pos[current]+1]], idx[id[current]][pos[current]+1]}); ^ biom.cpp:41:54: warning: array subscript has type 'char' [-Wchar-subscripts] if (pos[current] != 0 && dist[idx[id[current]][pos[current]-1]] > dist[current]+d){ ^ biom.cpp:42:33: warning: array subscript has type 'char' [-Wchar-subscripts] dist[idx[id[current]][pos[current]-1]] = dist[current]+d; ^ biom.cpp:43:42: warning: array subscript has type 'char' [-Wchar-subscripts] pq.push({dist[idx[id[current]][pos[current]-1]], idx[id[current]][pos[current]-1]}); ^ biom.cpp:43:77: warning: array subscript has type 'char' [-Wchar-subscripts] pq.push({dist[idx[id[current]][pos[current]-1]], idx[id[current]][pos[current]-1]}); ^ biom.cpp: In function 'int main()': biom.cpp:57:27: warning: array subscript has type 'char' [-Wchar-subscripts] pos[i] = idx[id[i]].size(); ^ biom.cpp:58:18: warning: array subscript has type 'char' [-Wchar-subscripts] idx[id[i]].push_back(i); ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
1 | 0 secunde | OK. | 3 | 3 | ||
2 | 0 secunde | OK. | 4 | 4 | ||
3 | 0 secunde | OK. | 4 | 4 | ||
4 | 0 secunde | OK. | 4 | 4 | ||
5 | 0.14 secunde | OK. | 4 | 4 | ||
6 | 0.048 secunde | OK. | 5 | 5 | ||
7 | 0.14 secunde | OK. | 5 | 5 | ||
8 | 0.164 secunde | OK. | 5 | 5 | ||
9 | 0.232 secunde | OK. | 2 | 2 | ||
10 | 0.196 secunde | OK. | 2 | 2 | ||
11 | 0.484 secunde | OK. | 2 | 2 | ||
12 | 0.232 secunde | OK. | 2 | 2 | ||
13 | 0.144 secunde | OK. | 2 | 2 | ||
14 | 0.032 secunde | OK. | 1 | 1 | ||
15 | 0.028 secunde | OK. | 1 | 1 | ||
16 | 0.036 secunde | OK. | 1 | 1 | ||
17 | 0.036 secunde | OK. | 1 | 1 | ||
18 | 0.04 secunde | OK. | 2 | 2 | ||
19 | 0.036 secunde | OK. | 2 | 2 | ||
20 | 0.24 secunde | OK. | 2 | 2 | ||
21 | 0.172 secunde | OK. | 2 | 2 | ||
22 | 0.16 secunde | OK. | 2 | 2 | ||
23 | 0.212 secunde | OK. | 2 | 2 | ||
24 | 0.056 secunde | OK. | 3 | 3 | ||
25 | 0.28 secunde | OK. | 1 | 1 | ||
26 | 0.32 secunde | OK. | 1 | 1 | ||
27 | 0.428 secunde | Raspuns gresit. | 1 | 0 | ||
28 | 0.068 secunde | Raspuns gresit. | 1 | 0 | ||
29 | 0.068 secunde | Raspuns gresit. | 1 | 0 | ||
30 | 0.432 secunde | OK. | 1 | 1 | ||
31 | Depășit | Limita de timp depășită | 1 | 0 | ||
32 | Depășit | Limita de timp depășită | 2 | 0 | ||
33 | Depășit | Limita de timp depășită | 2 | 0 | ||
34 | Depășit | Limita de timp depășită | 2 | 0 | ||
35 | Depășit | Limita de timp depășită | 2 | 0 | ||
36 | Depășit | Limita de timp depășită | 2 | 0 | ||
37 | 0 secunde | Raspuns gresit. | 2 | 0 | ||
38 | 0.024 secunde | Raspuns gresit. | 2 | 0 | ||
39 | 0.024 secunde | Raspuns gresit. | 2 | 0 | ||
40 | 0.024 secunde | Raspuns gresit. | 2 | 0 | ||
41 | 0 secunde | OK. | 2 | 2 | ||
42 | 0 secunde | OK. | 2 | 2 | ||
43 | 0 secunde | Raspuns gresit. | 2 | 0 | ||
44 | 0 secunde | Raspuns gresit. | 2 | 0 | ||
45 | 0 secunde | OK. | 2 | 2 | ||
46 | 0 secunde | OK. | 2 | 2 | ||
Punctaj total | 74 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema biom 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ă.