Hace varios años, Hot Wheels creó un juego flash simple llamado "Formula Fuelers Racers" *. Para jugar, selecciona tres ingredientes de una nevera para poner en tu automóvil, que luego se corre contra el automóvil generado aleatoriamente de la computadora. Resulta que la mecánica de este juego es bastante simple. En primer lugar, el "tiempo" de carrera real de su automóvil se genera aleatoriamente y no tiene relación con si gana o no la carrera. En segundo lugar, el ganador de la carrera está determinado por un puntaje que se calcula a partir de los ingredientes seleccionados (se permiten ingredientes duplicados, y el orden es importante). Cada ingrediente tiene un "valor" asociado y una "operación" asociada como se muestra en la siguiente tabla:
# ingredient val op
1 Hot Salsa 2 +
2 Root Beer 1 +
3 Milk 1 +
4 Pickle Juice 2 +
5 Mystery Lunch -3 *
6 BBQ Sauce 2 +
7 Egg 1 +
8 Ketchup 2 +
9 Mustard -1 *
10 Melon 1 +
11 Chocolate Milk 1 +
12 Mayonnaise -2 *
13 Baby Food 0 +
14 Pepper 1 +
15 Salt 2 +
16 Syrup -1 *
17 Salad Dressing 2 +
18 Orange Juice 1 +
19 Soy Sauce 2 +
Por conveniencia, este desafío se referirá a los ingredientes por su número y no por su nombre. Estos son los pasos para calcular una puntuación:
- Primero, inicialice la puntuación con el valor del primer ingrediente.
- Luego, use la operación del segundo ingrediente para combinar el puntaje actual y el valor del segundo ingrediente para obtener un puntaje actualizado.
- Finalmente, use la operación del tercer ingrediente para combinar el puntaje actual y el valor del tercer ingrediente para obtener el puntaje final.
Los puntajes más altos son mejores y siempre superan los puntajes más bajos.
Por ejemplo, los ingredientes 1 2 3tienen una puntuación de (2+1)+1 = 4. Los ingredientes 7 5 6tienen una puntuación de (1*-3)+2 = -1. Por lo tanto, 1 2 3late 7 5 6.
Reto
En este desafío, deberá escribir un programa que tome una lista ordenada de 3 enteros y genere la puntuación correspondiente.
Entrada
Su programa puede aceptar una lista de tres enteros en el formato más conveniente. Se le permite usar la indexación 1 para los nombres de ingredientes (como arriba) o la indexación 0 (restar 1 de cada índice arriba).
Ouput
Su programa debe generar un solo entero que indique la puntuación.
Casos de prueba
4 5 5 => 18 // max score
5 5 5 => -27 // min score
13 13 13 => 0
1 2 3 => 4
7 5 6 => -1
16 2 19 => 2
19 7 12 => -6
* Esta página está bastante desactualizada y no funciona en algunos navegadores, pero no necesitas jugar el juego para este desafío.