Mai intai trebuie sa te autentifici.
Diferente pentru algoritmiada-2010/runda-2/solutii/redu intre reviziile #5 si #6
Nu exista diferente intre titluri.
Diferente intre continut:
Pentru a reduce caracterul de pe pozitia $i$ cu cel de pe pozitia $k$ trebuie sa reducem $S1$, $S2$ (incluzand pozitia $j$) si apoi cele doua caractere ramase $S[i]$, $S[k]$.
Asadar pentru a gasi solutia optima trebuie doar sa incercam toate $k$-urile posibile si sa o alegem pe cea mai buna. Astfel recurenta dinamicii se contureaza in acest mod: $din[i][j] = MIN ( din[i + 1][k - 1] + din[k + 1][j] + C[ S[i] ][ S[k] ])$ pentru oricare $k=i,j$. Trebuie sa avem atentie la cateva cazuri particulare:
Asadar pentru a gasi solutia optima trebuie doar sa incercam toate $k$-urile posibile si sa o alegem pe cea mai buna. Astfel recurenta dinamicii se contureaza in acest mod: $din[i][j] = MIN ( din[i + 1][k - 1] + din[k + 1][j] + C[ S[i] ][ S[k] ])$ pentru oricare $k=i+1,j$. Trebuie sa avem atentie la cateva cazuri particulare:
* din[i][j], unde j - i + 1 nu este par este INFINIT (nu se poate reduce o secventa de lungime impara) * din[i][j], unde i > j este 0 (ajungem in aceste cazuri prin recurenta noastra, dar ele reprezinta siruri vide)