#1038
Zona2
Ionuţ pleacă în drumeţie într-o porţiune de teren de formă pătratică cu latura de N
metri. O hartă a zonei are trasat un caroiaj care împarte zona în N*N
pătrate unitate, cu latura de 1
metru. Astfel harta zonei are aspectul unui tablou pătratic cu N
linii şi N
coloane. Liniile şi coloanele sunt numerotate de la 1
la N
. Elementele tabloului bidimensional corespund pătratelor unitate. Zona poate fi parcursă străbătând oricare dintre laturile pătratelor unitate cel mult o singură dată.
Ionuţ pleacă din punctul aflat în colţul din dreapta jos al pătratului unitate din linia X
, coloana Y
şi se deplasează făcând un pas (parcurgând o latură a unui pătrat unitate) în una din direcţiile Nord, Est, Sud, Vest. Pentru a reţine mai uşor traseul foloseşte următoarea codificare pentru cele 4
direcţii: 1
pentru deplasarea spre Nord, 2
pentru deplasarea spre Est, 3
pentru deplasarea spre Sud, respectiv 4
pentru deplasarea spre Vest.
Ajuns într-alt punct (colţ de pătrat unitate), Ionuţ continuă să se deplaseze fără a trece de mai multe ori pe aceeaşi latură a unui pătrat unitate.
Ionuţ se opreşte în momentul în care ajunge într-un punct prin care a mai trecut. Traseul străbătut între cele două treceri prin acelaşi punct delimitează o zonă de teren formată din pătrate unitate.
Dându-se linia X
şi coloana Y
corespunzătoare poziţiei de plecare a lui Ionuţ, dimensiunea zonei N
, lungimea traseului L
şi traseul determinaţi:
a) Numărul de paşi parcurşi între prima şi a doua trecere prin punctul de oprire.
b) Numărul de pătrate unitate interioare zonei delimitată de traseul străbătut între cele două treceri prin acelaşi punct.
Problema | Zona2 | Operații I/O |
zona2.in /zona2.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #49731202 | Utilizator | |
Fișier | zona2.cpp | Dimensiune | 3.07 KB |
Data încărcării | 13 Martie 2024, 13:40 | Scor / rezultat | 30 puncte |
zona2.cpp: In function 'int main()': zona2.cpp:63:19: warning: array subscript is above array bounds [-Warray-bounds] cd[last][2]=y+1; ^ zona2.cpp:69:16: warning: array subscript is above array bounds [-Warray-bounds] cd[1][2]=y; ^ zona2.cpp:75:16: warning: array subscript is above array bounds [-Warray-bounds] cd[1][2]=y+1; ^ zona2.cpp:81:16: warning: array subscript is above array bounds [-Warray-bounds] cd[1][2]=y+1; ^ zona2.cpp:87:16: warning: array subscript is above array bounds [-Warray-bounds] cd[1][2]=y+1; ^ zona2.cpp:93:16: warning: array subscript is above array bounds [-Warray-bounds] cd[1][2]=y; ^ zona2.cpp:99:16: warning: array subscript is above array bounds [-Warray-bounds] cd[1][2]=y; ^ zona2.cpp:105:16: warning: array subscript is above array bounds [-Warray-bounds] cd[1][2]=y; ^ zona2.cpp:112:22: warning: array subscript is above array bounds [-Warray-bounds] y=cd[first][2]; ^ zona2.cpp:117:23: warning: array subscript is above array bounds [-Warray-bounds] cd[last][2]=y; ^ zona2.cpp:125:23: warning: array subscript is above array bounds [-Warray-bounds] cd[last][2]=y+1; ^ zona2.cpp:133:23: warning: array subscript is above array bounds [-Warray-bounds] cd[last][2]=y; ^ zona2.cpp:141:23: warning: array subscript is above array bounds [-Warray-bounds] cd[last][2]=y-1; ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
1 | 0 secunde | Cerinta a - corect. Cerinta b - corect. | 10 | 10 | ||
2 | 0 secunde | Caught fatal signal 11 | 10 | 0 | ||
3 | 0 secunde | Caught fatal signal 11 | 10 | 0 | ||
4 | 0 secunde | Caught fatal signal 11 | 10 | 0 | ||
5 | 0 secunde | Caught fatal signal 11 | 10 | 0 | ||
6 | 0 secunde | Cerinta a - corect. Cerinta b - corect. | 10 | 10 | ||
7 | 0 secunde | Caught fatal signal 11 | 10 | 0 | ||
8 | 0 secunde | Caught fatal signal 11 | 10 | 0 | ||
9 | 0 secunde | Caught fatal signal 11 | 10 | 0 | ||
10 | 0 secunde | Cerinta a - corect. Cerinta b - corect. | 10 | 10 | ||
Punctaj total | 30 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Zona2 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ă.