Astérix y el escudo arverno
Hola!
Volvemos a la carga, un lunes más, con un nuevo acertijo.
Los aficionados a Astérix sabrán, por sus aventuras con el escudo arverno, que en la antigua ciudad gala de Gergovia todos los habitantes se dedicaban a comerciar con vino:
La economía del lugar estaba por tanto bastante restringida, y consistía en que todos se vendían vino entre ellos, poniendo a la venta inmediatamente cada litro de vino que compraban. Todos los días, cada comerciante decidía cuánto vino quería comprar o vender, dándose la curiosa situación de que la demanda total siempre era la misma que la oferta.
Aunque no hubiera por tanto ni déficit ni superávit en ningún momento, existía el problema del transporte: la compra-venta exigía llevar el vino de un lugar a otro, lo que suponía un trabajo. Dado que, en la práctica, todos tenían el mismo vino de tanto intercambiarlo, a los compradores no les importaba a quién compraran el vino, y a los vendedores les daba igual a quién se lo vendieran. Además, todos los comercios estaban unos al lado de los otros, a la misma distancia a lo largo de una larga calle. Con estas condiciones, todas las mañanas, una vez conocida la oferta y la demanda, se ponían de acuerdo para minimizar los desplazamientos del vino, que iba pasando de mano en mano entre los comercios adyacentes.
Por ejemplo, una determinada mañana el comerciante de un extremo de la calle decidió que quería comprar cinco litros; el siguiente quería vender 4, el siguiente comprar 1, el siguiente vender tres y el siguiente comprar uno. Para que resulte más fácil de leer, escribiremos todos los números consecutivos, de manera que un número positivo indica la intención de comprar vino, y un número negativo la de venderlo:
5 -4 1 -3 1
Fíjate que la suma total es 0, dado que, como hemos dicho, la oferta y la demanda están equilibradas. Tras pensarlo un poco, se las arreglaron para conseguir que todos los comerciantes cumplieran sus objetivos del día desplazando un total de sólo 9 litros de vino entre comercios. Ten en cuenta que el desplazamiento del vino se realiza de comercio en comercio, por lo que, por ejemplo, conseguir que el cuarto comercio le venda un litro al primero significa que ese litro cambiará de manos tres veces, por lo que cuenta como haber movido 3 litros en total, aunque en realidad estemos moviendo un único litro tres veces.
¿Cuál es la menor cantidad de litros que necesitaron moverse los días siguientes?
- -100 -200 -300 -400 -500 500 400 300 200 100
- 100 200 300 400 500 -100 -200 -300 -400 -500
- -1 -2 -3 -4 5 -6 7 -8 9 -10 11 -12 13 -14 15
Como siempre, ¡cuéntanos tu solución en los comentarios! Y si te gusta programar y quieres intentarlo, puedes probar suerte aquí.
Esta semana parece ser que hay exámenes.. =)
Aquí van mis respuestas:
Caso1 -> 5500l movidos
Caso2 -> 7500l movidos
Caso3 -> 100l movidos
Aquí dejo el algoritmo en python, por si lo queréis ver (o corregir) =P
http://www.codeskulptor.org/#user27_kunzlivWbRsbWJ3.py
Salu2