.campion
conectare | înregistrare | căutare
Pagina principală » Probleme » zona

ultima problemă
grupă: mică
sursă: OMI 2016
ultimul articol
autor: Prof. Radu Vişinescu
ultimul software
autor: Prof. Emanuela Cerchez
zona


Timp maxim de execuţie / test:
0.1s
Memorie totala disponibilă / stivă:
16MB / 1MB

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 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ă.

Exemple

zona.inzona.outExplicaţii
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.



autor: Prof. Radu Vişinescu
propunător: Prof. Emanuela Cerchez
Colegiul Naţional ″Emil Racoviţă″
emanuela.cerchez@gmail.com
Articole recomandate
De acelaşi autor: Parcurgere Euler
Probleme recomandate
De la OJI 2013: compar, unific, galbeni, cladiri2, chibrituri, bete1, clepsidru, betasah, calcule, biperm, subsecvente, puncte6, maxp
De acelaşi autor: concurs, placare, poarta, poartas, printesa, sablon3
Despre matrice: vopsea, harta, opmat, sarpe, light, magic2, tetris, origami, concurs, iepuras, tribile, criptmat, cutie, patrate, 3d, pajura, perspic, vecini2, livada, matrice3, kafka, erdos, grup, scor2, reteta2, rezervatie, scoici, tablou, game, stea, submatrix, cifru, jokes, oua, trecere, na, dotnet, renju, ghici, mere1, agitatie, lacuri, sotron, desen1, camion, ceas1, fibo, parc, excursia, matricea, zidar, joc6, log, concurs2, cladiri, dist, centru, robinson, cuburi2, joc8, joc9, romeo, adevar, soricel2, avere, joc11, vizibil, sah1, blockout, masina3, lsort, anticip, matrice1, evantai, spion, pereti, zumzi, roboti, placare, tabel, ocr, numere7, lacusta, becuri, sir5, flori, cartele, furnica, pavare, poarta, rj, peri, poligon2, sablon1, gradina, matrice4, poartas, balcon, submdisj, v, matrx, figura, neuroni, raze, roboti1, bila, iepurasi, colorare, mat, submatrix1, simetric1, plaja, xor2, guess, albine1, joct, alfabetar, stele, tablou1, alpinist, cladire, cri, grupe2, el, mahjong, sir9, acces, tort1, joc17, mesaj3, zar1, xy, poteci, avioane, broscute, safeu, acoperire1, radioactiv, robot4, lcdr, jb, slide, maxtri, dame, triunghi4, elicop, compresie, mijloc, cubulete, romb, medalion, bile6, zigzag, puncte5, intersectii, matd3, matrixdel, speed, seif1, traseu2, incadrare, betasah, latin, zmax, amestec, sudoku1, gradina1, spider, zone, bemo, rombul, interclasare, rebus1, tabla, arrows, pseudobil, patrat1, rascoala, harta2, relatii, lasere, defrag, matcnt, ssdj, cript, ssk, teren1, fence, cifre6
Despre fill: rebus, sarpe, insule, lacuri, zuzu, joc11, gradina, dreptunghiuri, drenaj, fillmat, parcela, acces, tsunami, betasah, zone, taxa, foto, ferma1, antitero, robotzi
surse trimise | ajutor