Ejercicios resueltos
Ejercicios resueltos
Ejercicios resueltos
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Solución ejercicio 8. Programación dinámica (cont.)<br />
fun ong(p[1..n],r[1..n],Fondo)<br />
crear C[1..n,0..Fondo]<br />
desde pr ← 1 hasta n hacer<br />
C[pr,0] ← 0<br />
desde impte ← 1 hasta Fondo hacer<br />
si pr=1 ∧ impte ≤ p[1]*r[1] entonces C[pr,impte] ← ⌊impte/p[1]⌋<br />
si no si pr=1 entonces C[pr,impte] ← r[1]<br />
si no<br />
C[pr,impte] ← 0<br />
desde k ← 0 hasta mín(r[pr],⌊impte/p[pr]⌋) hacer<br />
si C[pr,impte] < k+C[pr-1,impte-k*p[pr]] entonces<br />
C[pr,impte] ← k+C[pr-1,impte-k*p[pr]]<br />
fin si<br />
fin desde<br />
fin si<br />
fin desde<br />
fin desde<br />
devolver C[n,Fondo]<br />
fin fun<br />
Yolanda García, Jesús Correas (DSIC - UCM) 32 / 32