(Espero que todavía sea Acción de Gracias para ti)
Tienes un pavo para tu cena de acción de gracias, pero no sabes cómo distribuirlo de manera uniforme. El problema es que algunas personas comen más que otras, por lo que debe encontrar una solución
Entrada
Habrá dos entradas. El primero será un arte ascii de varias personas.
o
o \|/
\|/ |
| |
/ \ / \
especificaciones de arte ascii
Cada persona ocupa un ancho de 3 columnas. Cada persona está separada por una sola columna de espacios. La parte superior de cada persona es un o. Debajo de o, desplazado por 1y -1en la x, están \y /, respectivamente. Desde la osegunda hasta la última fila en la entrada |, la cantidad de estos por persona es su "altura". Los únicos datos que necesitará extraer de cada persona es su "altura".
Siempre habrá al menos una persona. Cada persona siempre tiene al menos 2 alturas. La altura máxima que debe manejar su programa es al menos una altura de 64.
Si desea que la entrada se rellene con espacios para formar un rectángulo, especifique esto en su respuesta.
La segunda entrada es el pavo. El pavo no es realmente un pavo, sino más bien las NxMdimensiones de un pavo. Si la segunda entrada es 3x2, entonces el pavo tiene dimensiones de 3 * 2, con un área total de 6.
Salida
El resultado puede ser una lista o la alternativa más cercana a su idioma (por ejemplo, Array). También puede generar una cadena, con los valores separados por espacios.
Los valores para cada persona deben aparecer en el orden en que fueron ingresados.
Desafío
Su objetivo es dividir el área del pavo entre la gente.
Un ejemplo de escenario:
Supongamos que son dos personas, con alturas de 3y 6, respectivamente. Si hay un pavo de 5x3. El área total del pavo que deberá distribuirse es 15.
Ahora, ¿cómo lo distribuirías entre todos? Así es cómo:
the_persons_height
TurkeyForAPerson = -------------------- * turkey_area
sum_of_all_heights
Esto significa que, para la primera persona con una altura de 3, obtendrán 3/9*15pavo, o 5, la segunda persona con una altura de 6ellos obtendrán 6/9*15o 10pavo.
Salida
La salida debe consistir únicamente en dígitos y ., a menos que elija optar por la bonificación. En ese caso, solo puede consistir en dígitos, espacios ( ) y una barra inclinada ( /).
Ejemplo completo
Entrada:
6x5
o
|
o \|/
\|/ |
| |
| |
/ \ / \
Salida:
11.25 18.75
Bonos
-20% de bonificación: genera una fracción (debe simplificarse), no importa si es una fracción mixta o impropia.
Puntuación
Este es el código de golf, ¡el código más corto en bytes gana!
