Está en la página 1de 3

1747 - Espacio de Intercambio

Usted administra un gran grupo de computadoras con discos duros que utilizan varios
tipos de sistemas de archivos para almacenar datos. Recientemente decidió unificar los
sistemas de archivos al mismo tipo. Eso es todo un desafío ya que todas las unidades
están actualmente en uso y están llenas de datos importantes hasta el límite de sus
capacidades y no puede permitirse perder ninguno de los datos. Además, reformatear
una unidad para usar un nuevo sistema de archivos puede cambiar significativamente
la capacidad de la unidad. Para hacer posible el reformateo, tendrá que comprar un
disco duro adicional. Obviamente, desea ahorrar dinero minimizando el tamaño de
dicho almacenamiento adicional.
Puede reformatear las unidades en cualquier orden. Antes de reformatear una unidad,
debe mover todos los datos de esa unidad a una o más unidades, dividiendo los datos
si es necesario. Después de reformatear una unidad, puede comenzar a usarla
inmediatamente para almacenar datos de otras unidades. No es necesario colocar
todos los datos en las mismas unidades en las que se iniciaron originalmente; de
hecho, esto podría incluso ser imposible si algunas de las unidades tienen menor
capacidad con el nuevo sistema de archivos. También se permite que algunos datos
terminen en la unidad adicional.
Como ejemplo, suponga que tiene cuatro unidades A, B, C y D con capacidades de
unidad de 6, 1, 3 y 3 GB. Con el nuevo sistema de archivos, las capacidades pasan a ser
de 6, 7, 5 y 5 GB, respectivamente. Si compra solo 1 GB de espacio adicional, puede
mover los datos de la unidad B allí y luego formatear la unidad B. Ahora tiene 7 GB
libres en la unidad B, por lo que puede mover los 6 GB de la unidad A allí y volver a
formatear la unidad A Por último, mueve los seis gigabytes totales de las unidades C y
D a la unidad A, y reformatea C y D.

Entrada
El archivo de entrada contiene varios casos de prueba, cada uno de ellos como se
describe a continuación.
La entrada comienza con una línea que contiene un número entero n (1 ≤ n ≤ 106), que
es la cantidad de unidades en su clúster. A continuación, hay n líneas, cada una de las
cuales describe una unidad como dos enteros “a” y “b”, donde “a” es la capacidad con
el sistema de archivos antiguo y “b” es la capacidad con el nuevo sistema de archivos.
Todas las capacidades se dan en gigabytes y satisfacen 1 ≤ a, b ≤ 109. (Mil petabytes
deberían ser suficientes para todos, ¿verdad?)
Salida
Para cada caso de prueba, muestre la capacidad adicional total en gigabytes que debe
comprar para reformatear las unidades.

Ejemplo de Entrada
4

66

17

35

35

22

33

51

5 10

Salida
1

5
Explicación
El ejercicio pide encontrar el espacio mínimo de memoria necesario para mover la
información de los discos, es importante notar que se puede dividir la información, por
lo cual sabemos que al liberar un disco podremos sumar la memoria sobrante a la
memoria libre que tenemos.

Solución
Para solucionar este ejercicio el primer paso es ordenar los ingresos en orden de
mayor capacidad con el cambio a menor capacidad, esto quiere decir que el espacio
que se obtiene al formatear el disco se debe restar del espacio original, esto se
ordenara mediante un árbol, una vez ordenado sabremos que el primer elemento
siempre nos dará la mayor capacidad para este caso la memoria necesaria seria la el
peso original y la memoria libre será la memoria obtenida al formatear, una vez hecho
esto compararemos con el siguiente elemento, en caso de que la memoria libre sea
mayor se restara la memoria inicial y se sumara la memoria al formatear, en caso de
que la memoria libre sea insuficiente para mover el siguiente disco se tomara la
memoria faltante para mover los datos

También podría gustarte