15.05.2013 Views

Ejercicios resueltos

Ejercicios resueltos

Ejercicios resueltos

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!