Enunciado TP Integrador

publicado a la‎(s)‎ 15 oct. 2011 17:41 por gisela decuzzi   [ actualizado el 15 oct. 2011 17:41 ]

La familia

El dominio

Se sabe que hay locales en varias zonas de Buenos Aires (por ejemplo: Retiro, Almagro, Palermo Sensible, Parque Avellaneda, etc) controladas por diferentes familias poderosas pertenecientes a la mafia, que manejan sus negocios y se rigen por estrictas normas de honor.

El honor lo vamos a manejar por unidades a las que vamos a llamar "puntos de honor", que vamos a describir más adelante.

 

El negocio de cada familia consiste en conrolar locales, entre los que vamos a considerar

Talleres clandestinos                    Restaurantes               Casinos

Cada local es controlado por una sola familia, y además sabemos en qué zona está.

 

Vamos a considerar que cada integrante está en todo momento en un local perteneciente a su familia.

 

No es ninguna noticia que las familias son muy ambiciosas. Las familias se atacan entre sí para conquistar alguna propiedad ajena, eliminando a su competencia con el objetivo de obtener más poder. A los integrantes de cada familia que pueden participar en los ataques se los considera integrantes activos, y los otros son los que se quedan cuidando el local en donde están. Para cada integrante se indica si es activo o no.

 

Los integrantes llevan encima sus instrumentos de trabajo a.k.a. armas. Dentro del arsenal que pueden manejar, vamos a considerar

  • Cuchillos: otorgan a quien lo posee una cantidad de puntos de honor que se establece para cada cuchillo; tienen una potencia destructiva de 1.
  • Ametralladoras: otorgan a quien la posee una cantidad de puntos de honor que es igual para todas las ametralladoras; tienen una potencia destructiva que se establece para cada ametralladora.
  • Bombas: no otorgan puntos de honor, y tienen 1000 de potencia destructiva.

Un arma se considera heavy si tiene más de 200 de potencia destructiva, u otorga más de 10 puntos de honor.

 

El honor se maneja así:

  • El honor de un integrante es la suma de los puntos de honor que le otorgan sus armas más una cantidad de puntos de honor básicos que son de él.
  • El honor de una familia es: una reserva de puntos de honor que es patrimonio común de la familia, más 20 puntos por cada integrante capo, más 10 puntos por cada local ocupado por la familia.

Un integrante es capo si tiene más de 100 puntos de honor y tiene al menos un arma heavy.

 

A la hora de conquistar un local perteneciente a otra familia, las familias pueden decidir enviar a un grupo de sus integrantes a atacar un local perteneciente a una zona determinada, con el fin de apropiarse de dicho lugar.

También pueden ir por la vía rápida, atacar toda una zona y quedarse con ella (es decir, con todos los locales que la comprenden).

En todos los casos, los atacantes son todos los integrantes activos de la familia que ataca; los atacantes capos son los integrantes activos que son capos.

 

Los ataques no siempre son exitosos, por varios factores.

Cada tipo de local tiene sus condiciones particulares para que un ataque contra él sea exitoso:

  • Restaurante: que los atacantes sean  más de 5, por lo menos 3 tengan armas heavies y el local este vacío de clientes (no se pide modelar a los clientes, sólo importa cuántos hay en el local en el momento del ataque).
  • Taller Clandestino: que haya más atacantes capos que defensores del local en total, y además haya un atacante capo con más puntos de honor que todos los defensores.
  • Casino: nunca conviene atacarlos.

Para realizar un ataque exitoso a una zona, esta debe estar completamente tomada por una sola familia (o sea, todos los locales tienen que estar ocupados por gente de la misma familia).

Además, es necesario que el grupo atacante tenga al menos el doble de integrantes que los ubicados en toda la zona (en todos los locales de la zona, sean activos o no).

 

Si el ataque a un local o zona es exitoso, todos los defensores mueren, y un atacante activo cualquiera pasa a cada local conquistado; además el local, o todos los locales de la zona, pasa/n a la familia victoriosa.

Si un ataque (ya sea a un local o a una zona) no es exitoso, para cada integrante activo de la familia atacante sucede que: si tiene menos de 200 puntos de honor muere, si no pierde todas sus armas.

 

Se pide:

Antes que nada


1.        Obtener para una familia

a.         El conjunto de integrantes activos, y el de los integrantes activos capos.

b.         El conjunto de armas heavies.

c.         Las zonas en las que tiene presencia, i.e. ocupa al menos un local.

 

2.        Obtener la familia más honorable (con más puntos de honor) entre las que tienen presencia en una determinada zona.

 

3.        Ataques a locales

a.         Lograr que las familias entiendan el mensaje perdistePorMasacre: unLocal, que libera el local y mata (o sea, simplemente saca de todos lados) a los integrantes de la familia que están en el mismo.

b.         Realizar el ataque de un local con las consecuencias indicadas más arriba, tanto si el ataque es exitoso como si no.

 

4.        Realizar el ataque a una zona con las consecuencias indicadas más arriba, tanto si el ataque es exitoso como si no.

 

5.        Más estadísticas

a.         Saber para una familia, dado un conjunto de zonas, qué le conviene atacar en esas zonas; o sea:

¿Está bien que la respuesta tenga locales y zonas mezclados? Sí.

¿Esta bien que me incluya en la respuesta una zona y también locales de esa zona? Si.

b.         Saber si dos familias están en conflicto, i.e. si ocupan locales en exactamente las mismas zonas (i.e. tienen que coincidir todas las de una familia con todas las de la otra).

Comments