Fişierul intrare/ieşire:albine.in, albine.outSursă.campion 2011
AutorAdrian PanaeteAdăugată defrancuCristian Francu francu
Timp execuţie pe test0.5 secLimită de memorie2048 kbytes
Scorul tăuN/ADificultatenormalnormalnormalnormalnormal

Vezi solutiile trimise

Albine

Albinele din Roiul Pătrat sunt în stup. Stupul are forma unei matrice nxn, iniţial existând câte o albină în fiecare poziţie şi formând astfel un roi sub formă de pătrat. Roiul va efectua mişcări în cele 4 direcţii (sus, jos, stânga, dreapta), albinele mutându-se simultan la o mişcare în poziţia vecină pe direcţia respectivă. Mişcările sunt codificate luând ca reper poziţia fixă a stupului. Deci dacă o albină va ocupa la un moment dat poziţia (i, j), la momentul următor, în funcţie de mişcarea efectuată de roi, ea va fi plasată astfel:

Mişcare 0 (sus) => poziţie (i-1, j)
Mişcare 1 (dreapta) => poziţie (i, j+1)
Mişcare 2 ( jos ) => poziţie (i+1, j)
Mişcare 3 (stânga) => poziţie (i, j-1).

În succesiunea de mişcări unele albine vor părăsi stupul altele care la un moment anterior părăsisera stupul vor reveni în stup. Astfel după fiecare mişcare, roiul îşi păstrează forma dar îşi modifică poziţia. Dacă o albină se găseşte la un moment dat în exteriorul stupului va culege 1 (un) gram de polen. Să se stabilească în urma unei succesiuni de mişcări date ce cantitate totală de polen au cules albinele din roi.

Cerinţă

Cunoscându-se n – dimensiunea stupului, m – numărul de mişcări, precum şi succesiunea acestora să se determine cantitatea totală de polen culeasă.

Date de intrare

Fişierul de intrare albine.in conţine pe prima linie cele două valori pentru n şi m - numere naturale separate printr-un spaţiu şi pe a doua linie cele m mişcări codificate prin numere de la 0 la 3 astfel : 0=sus, 1=dreapta, 2=jos, 3=stânga, separate prin câte un spaţiu.

Date de ieşire

Fişierul de ieşire albine.out va conţine pe prima linie o valoare naturală reprezentând cantitatea totală de polen culeasă de toate albinele din stup (exprimată în grame).

Restricţii

  • 1 ≤ n ≤ 10.000
  • 1 ≤ m ≤ 1.000.000

Exemplu

albine.inalbine.out
4 7
1 1 2 1 3 0 1
65
Trebuie sa te autentifici pentru a trimite solutii. Click aici