Nu aveți permisiuni pentru a descărca fișierul grader_test10.ok

Fișierul intrare/ieșire porumb.in, porumb.out Sursă .campion 2010
Autor Sergiu Corlat Adăugată de avatar StefanPitur Stefan Pitur StefanPitur
Timp de execuție pe test 0.05 sec Limită de memorie 2048 KB
Scorul tău N/A Dificultate N/A

Porumb

După cataclismul din 2012 supraviețuitorii au debarcat pe continentul New Africa unde s-au ciocnit de lanurile de porumb răpitor (o mutație a porumbului, apărută în urma furtunii solare, care se hrănește cu organisme vii și se poate deplasa!). Memoria colectivă impune ca plantele să se miște în linii drepte, la distanțe fixe una de alta (cum erau cultivate pe vremuri). În timpul mișcării lanul distruge tot ce îi stă în cale. Din fericire, porumbul este activ doar noaptea, ziua rămânând nemișcat. Astfel, coloniștii pot să distrugă plantele în timpul zilei, folosind aruncătoarele de foc (după ardere porumbul răpitor se transforma imediat în popcorn). Deoarece resursele coloniștilor sunt limitate, iar numărul lanurilor de porumb răpitor este mare, pentru arderea fiecărui lan este repartizat un singur distrugător. Imediat după răsăritul soarelui distrugătorul este deplasat cu un elicopter și lăsat în fața unui rând din lanul de porumb. In fiecare secundă, distrugătorul poate efectua una dintre următoarele trei acțiuni:
- să se deplaseze cu un pas spre dreapta (la rândul următor de porumb);
- să se deplaseze cu un pas spre stânga (la rândul precedent de porumb);
- să ardă cea mai apropiată plantă aflată pe rândul care este în fața sa.
Realizarea oricăreia din acțiunile date necesită exact o secundă.
Deoarece zilele în New Africa sunt foarte scurte, numărul de acțiuni pentru a arde lanul trebuie să fie cât mai mic posibil, altfel apare pericolul ca odată cu venirea nopții distrugătorul să fie consumat de porumb.

Cerinta

Scrieți un program care va determina timpul minim necesar pentru distrugerea unui lan de porumb dat.

Date de intrare

Fișierul de intrare porumb.in conține pe prima linie două numere întregi n m, separate prin spațiu, reprezentând numărul de linii de porumb și respectiv numărul rândului în fața căreia se află inițial distrugătorul. Rândurile de porumb sunt numerotate de la stânga la dreapta de la 1 la n. Cea de a doua linie conține n numere întregi, separate prin câte un spațiu, a1 a2 ... an, unde ai reprezintă numărul de plante aflate pe rândul i.

Date de ieșire

Fișierul de ieșire porumb.out va conține o singură linie pe care va fi scris un număr natural reprezentând timpul minim necesar pentru distrugerea lanului de porumb descris în fișierul de intrare, exprimat în secunde.

Restricții

  • 0 < m ≤ n ≤ 100
  • 0 < x ≤ 100, pentru x apartinand sirului citit.

Exemplu

porumb.in porumb.out
4 4
1 2 2 1
9

Explicatie

Distrugătorul arde planta din linia din fața sa (1), se mișcă spre stânga (1), arde prima plantă din linie (1), arde a doua plantă din linie (1), se mișcă spre stânga (1), arde prima plantă din linie (1), arde a doua plantă din linie (1), se mișcă spre stânga (1), arde planta din linie (1). Sfârșit. Total – 9 secunde.

Trebuie să te autentifici pentru a trimite soluții. Click aici