Fişierul intrare/ieşire:zona.in, zona.outSursăOJI 2013 Clasa a 10-a
AutorRadu VisinescuAdăugată decocoClaudiu coco
Timp execuţie pe test0.05 secLimită de memorie65536 kbytes
Scorul tăuN/ADificultatenormalnormalnormalnormalnormal

Vezi solutiile trimise

Zona ( clasa a 10 )

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.

Cerinţă

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.

Date de intrare

Pe prima linie a fişierului zona.in se află valorile X, Y, N şi L despărţite prin câte un spaţiu, reprezentând coordonatele punctului de plecare, dimensiunea terenului şi lungimea traseului parcurs. Pe următoarea linie se află L valori din mulţimea {1, 2, 3, 4} despărţite prin câte un spaţiu, reprezentând codificarea întregului traseu.

Date de ieşire

Fişierul zona.out va conţine două linii, pe prima linie un număr natural reprezentând răspunsul la cerinţa a), iar pe linia a doua, un număr natural reprezentând răspunsul la cerinţa b).

Restricţii

  • 0 < N < 51
  • 0 < X, Y < N
  • 0 < L < 2501
  • Se garantează faptul că traseul trece de două ori prin acelaşi punct şi nu parcurge de două ori aceeaşi latură.

Exemplu

zona.inzona.outExplicaţie
2 3 7 18
2 3 3 3 4 3 4 1 1 1 1 1 2 2 2 3 3 4
16
11
După cei 18 paşi de la plecare ajunge în punctul situat în colţul din dreapta jos al pătratului unitate de coordonate (3,4). Ultimii 16 paşi parcurşi delimitează 11 pătrate unitate.
 
Trebuie sa te autentifici pentru a trimite solutii. Click aici