Está en la página 1de 1

E. T. S.

de Ingenierı́a Informática Curso: 2014–15


Análisis y Diseño de Algoritmos Control Bloque 3

Alumno: Grado:

Ejercicio 1
Dado un conjunto {r1 , r2 , ..., rn } de puntos de la recta real, determinar el menor conjunto de inter-
valos cerrados de longitud 1 que contenga a todos los puntos dados.

1. Definir las componentes de un algoritmo ávido para este problema (candidatos, test de facti-
bilidad, etc.).
2. Demostrar si tu algoritmo encontrará siempre el óptimo o, por el contrario, no (con un con-
traejemplo).

3. Proponer (en pseudolenguaje o cualquier lenguaje de implementación) una implementación


del algoritmo que permita resolver el problema propuesto.

Ejercicio 2
El Barras y el Botones acaban de desvalijar la reserva malagueña de oro. Los lingotes están empa-
quetados en n cajas de diferentes pesos naturales positivos pi para i entre 1 y n. Como no tienen
tiempo de desempaquetarlos para dividir el botı́n, deciden utilizar los pesos de cada una de las cajas
para distribuir el botı́n a medias. Al cabo de un buen rato todavı́a no han conseguido repartirse el
botı́n, por lo cual acuden al Teclas para saber si el botı́n se puede dividir en dos partes iguales sin
desempaquetar las cajas con los lingotes.
1. Encontrar una recurrencia para el algoritmo, definiendo claramente el significado de la expre-
sión utilizada. Nótese que la expresión utilizada debe denotar un booleano que indique si el
botı́n se puede dividir en dos partes iguales, que es lo único que desean saber el Barras y el
Botones.
2. Construir un algoritmo de programación dinámica para resolver el problema y determinar su
complejidad.

Puntuaciones: [Ejercicio 1: 4.5 puntos; Ejercicio 2: 5.5 puntos]

También podría gustarte