#4443
biom
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 | #57371941 | Utilizator | |
Fișier | biom.cpp | Dimensiune | 1.74 KB |
Data încărcării | 27 Martie 2025, 19:36 | Scor / rezultat | 85 puncte |
biom.cpp: In function 'void dijkstra()': biom.cpp:36: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:36: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:36: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:37:33: warning: array subscript has type 'char' [-Wchar-subscripts] dist[idx[id[current]][pos[current]+1]] = dist[current]+c; ^ biom.cpp:38: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:38: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:40: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:41:33: warning: array subscript has type 'char' [-Wchar-subscripts] dist[idx[id[current]][pos[current]-1]] = dist[current]+d; ^ biom.cpp:42: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:42: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:56:27: warning: array subscript has type 'char' [-Wchar-subscripts] pos[i] = idx[id[i]].size(); ^ biom.cpp:57: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.1 secunde | OK. | 4 | 4 | ||
6 | 0.04 secunde | OK. | 5 | 5 | ||
7 | 0.1 secunde | OK. | 5 | 5 | ||
8 | 0.108 secunde | OK. | 5 | 5 | ||
9 | 0.176 secunde | OK. | 2 | 2 | ||
10 | 0.14 secunde | OK. | 2 | 2 | ||
11 | 0.34 secunde | OK. | 2 | 2 | ||
12 | 0.176 secunde | OK. | 2 | 2 | ||
13 | 0.1 secunde | OK. | 2 | 2 | ||
14 | 0.02 secunde | OK. | 1 | 1 | ||
15 | 0.016 secunde | OK. | 1 | 1 | ||
16 | 0.024 secunde | OK. | 1 | 1 | ||
17 | 0.024 secunde | OK. | 1 | 1 | ||
18 | 0.028 secunde | OK. | 2 | 2 | ||
19 | 0.024 secunde | OK. | 2 | 2 | ||
20 | 0.176 secunde | OK. | 2 | 2 | ||
21 | 0.128 secunde | OK. | 2 | 2 | ||
22 | 0.116 secunde | OK. | 2 | 2 | ||
23 | 0.152 secunde | OK. | 2 | 2 | ||
24 | 0.044 secunde | OK. | 3 | 3 | ||
25 | 0.196 secunde | OK. | 1 | 1 | ||
26 | 0.232 secunde | OK. | 1 | 1 | ||
27 | 0.28 secunde | Raspuns gresit. | 1 | 0 | ||
28 | 0.052 secunde | Raspuns gresit. | 1 | 0 | ||
29 | 0.052 secunde | Raspuns gresit. | 1 | 0 | ||
30 | 0.308 secunde | OK. | 1 | 1 | ||
31 | 0.472 secunde | OK. | 1 | 1 | ||
32 | 0.468 secunde | OK. | 2 | 2 | ||
33 | 0.456 secunde | OK. | 2 | 2 | ||
34 | 0.448 secunde | OK. | 2 | 2 | ||
35 | 0.452 secunde | OK. | 2 | 2 | ||
36 | 0.444 secunde | OK. | 2 | 2 | ||
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 | 85 |
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ă.