Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
UNED
Curso 2019-2020
Universidad Nacional de Educación a Distancia ETSI Informática
Dos socios que forman una sociedad comercial desean disolverla. Cada uno de los n
activos de la sociedad que hay que repartir tiene un valor entero positivo. Los socios
quieren repartir dichos activos a medias y, para ello, quieren conocer todas las posibles
formas que tienen de dividir el conjunto de activos en dos subconjuntos disjuntos, de
forma que cada uno de ellos tenga el mismo valor entero.
Activo 1 2 3 4 5 6 7 8 9 10
Valor 10 9 5 3 3 2 2 2 2 2
Socio1: 10, 2, 2, 2, 2, 2
Socio2: 9, 5, 3, 3
problema aplicando el esquema de Vuelta Atrás. El diseño debe seguir las directrices
que se dan para este problema en el texto base.
-t: traza cada paso de manera que se describa la aplicación del algoritmo
utilizado.
-h: muestra una ayuda y la sintaxis del comando. Por ejemplo:
$ Java reparto -h <ENTER>
SINTAXIS:
reparto [-t][-h][fichero_entrada] [fichero_salida]
-t Traza la selección de activos
-h Muestra esta ayuda
fichero_entrada Nombre del fichero de entrada
fichero_salida Nombre del fichero de salida
fichero_entrada: es el nombre del fichero del que se leen los datos de entrada;
es decir, el número de activos, seguido del valor de cada activo. Si la entrada no
es correcta, el programa debe indicarlo.
fichero_salida: es el nombre del fichero que se creará para almacenar la salida.
Si el fichero ya existe, el comando dará un error. Si falta este argumento, el
programa muestra el resultado por pantalla.
10
10 9 5 3 3 2 2 2 2 2
La salida consta de una línea con el número de soluciones encontradas y después, por
cada solución, tres líneas con:
Identificador de la solución
Los valores de los activos asignados al socio1
Los valores de los activos asignados al socio2.
Se evitarán las soluciones repetidas (mismo reparto para el mismo socio, aunque se
haya llegado a ellas de distinta forma).
Así, para nuestro ejemplo, la salida sería:
6
1
10 5 3 2
9 3 2 2 2 2
2
10 3 3 2 2
9 5 2 2 2
3
10 2 2 2 2 2
9 5 3 3
4
9 3 2 2 2 2
10 5 3 2
5
9 5 2 2 2
10 3 3 2 2
6
9 5 3 3
10 2 2 2 2 2
Se enviará al tutor, por los medios que este indique, la siguiente información:
Toda esta documentación deberá tener bien legible: Nombre y apellidos, C. Asociado,
teléfono y e-mail.
TUTORES
****
****