Devuelve el último color de la entrada en Manufactoria


10

Este rompecabezas es el siguiente en mi serie de desafíos de Manufactoria.

Antecedentes

Manufactoria es un juego / lenguaje de programación bidimensional. El jugador debe crear programas que manipulen una cola para llegar a la salida deseada. Es fácil de aprender pero difícil de dominar, por lo que se presta para crear una amplia variedad de desafíos. Si no sabes de lo que estoy hablando, te aconsejo que juegues los primeros niveles tutoriales del juego.

Desafío

Su desafío es crear una máquina que devuelva el último elemento de la cadena de entrada. Para hacer esto aún más desafiante, la cadena de entrada puede ser cualquier combinación de los cuatro colores .

El nivel personalizado oficial que se utilizará se encuentra aquí:

http://pleasingfungus.com/Manufactoria/?ctm=Last_in_Line!;IN:_a_series_of_colors_OUT:_the_very_last_color;byrgyrbyrrgry:y|bbrrbryyyrrbr:r|ggryybrryr:r|b:b|:|gyrbrygbryrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr r; 13; 3; 0 ;

El desafío de esta semana se centra principalmente en la idea de la compresión. Elegí este desafío para requerir un gran lío de cintas transportadoras. El hecho de que aparezcan los cuatro colores en la entrada significa que es muy difícil almacenar información.

Aunque no intenté la compresión, mi primer prototipo de trabajo tenía 114 piezas y cabía en el espacio de 13x13, casi sin espacio de sobra.

Puntuación

El objetivo de este desafío es utilizar algunas partes como sea posible. El puntaje es el número de partes colocadas, y gana el puntaje más bajo.

Aunque solo hay 8 casos de prueba, su creación debería poder funcionar teóricamente en cualquier caso de prueba. Los casos de prueba provistos son para propósitos de depuración.

Ejemplos

in:  byrgyrbyrrgry
out: y
in:  ggryybrryr
out: r
in:         #don't you love degenerate cases?
out:
in:  gyrbrygbrygbyrb
out: b

Respuestas:


6

65 partes

ingrese la descripción de la imagen aquí Para ser honesto, ni siquiera se me ocurrió la idea de poner pares de lectores directamente uno contra el otro hasta que lo vi en las soluciones ya publicadas. Pero luego comencé a idear muchos trucos de optimización.

Enlace


... puedes poner cintas transportadoras una encima de la otra?
SuperJedi224

7

4

4

Un pequeño reordenamiento de las cintas transportadoras redujo esto a 81 partes. Vea aquí . Además, cambiar los colores parece acelerarlo (aunque realmente no importa) de 6:23 a 5:38. Ver esta pasta para la URL.
Volatilidad

@Volatility Gracias por las 3 partes. El parece más rápido depende totalmente de los casos de prueba, por lo que realmente no importa ;-)
Howard

2
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.