Victor are la dispoziție multe cuburi din lemn, toate de aceeași dimensiune, fiecare fiind colorat cu una din culorile $0$, $1$, $2$, …, $9$. El a inventat un joc sub forma unui algoritm:
Se consideră un șir cu cel puțin două elemente reprezentând culorile cuburilor din șir. Se cere să se calculeze valoarea maximă pe care o poate avea $X$.
În fișierul easydel.in se află pe prima linie șirul dat. Cifrele din șir sunt scrise fără spații între ele.
În fișierul easydel.out se va scrie un singur număr reprezentând valoarea maximă pe care o poate avea $X$.
easydel.in
12132131123221
easydel.out
37
Se elimină toate cuburile de culoare $1$. Șirul rămas este $[{\_}, 2, {\_}, 3, 2, {\_}, 3, {\_}, {\_}, 2, 3, 2, 2, {\_}]$ Numărul de mutări spre stânga va fi $1+2+2+3+5+5+5+5$, deci $X$ va crește cu $28$. Șirul devine $[2,3,2,3,2,3,2,2]$.
Dacă se vor elimina apoi cuburile de culoare $3$ , atunci șirul rămas va fi $[2,{\_},2,{\_},2,{\_},2,2]$. Numărul de mutări spre stânga va fi $1+2+3+3$, deci $X$ va crește cu $9$. Șirul va deveni $[2,2,2,2,2]$ și jocul se va opri. Valoarea lui $X$ va fi $37$.
Dacă la început se elimină cuburile de culoare $2$ , atunci se va obtine sirul $[1,{\_},1,3,{\_},1,3,1,1,{\_},3,{\_},{\_},1]$. $X$ va crește cu $18$. Șirul va deveni $[1,1,3,1,3,1,1,3,1]$ și $X$ va putea crește cu cel mult $10$ .
Dacă la început se elimină cuburile de culoare $3$, atunci se va obține șirul $[1,2,1,{\_},{\_},{\_},1,1,2,{\_},2,2,1]$, iar $X$ va crește cu $17$. Șirul va deveni $[1,2,1,2,1,1,1,2,2,2,1]$, iar $X$ va putea crește cu cel mult $18$.
| Autor: | Ionel-Vasile Piț-Rada |
| Publicat de: | raresgherasa |
Tags:
Programare dinamică Dinamică pe stări exponențiale