Retorna a última cor da entrada no Manufactoria


10

Este quebra-cabeça é o próximo da minha série de desafios da Manufactoria.

fundo

Manufactoria é uma linguagem de programação de jogos / bidimensional. O jogador deve criar programas que manipularão uma fila para chegar à saída desejada. É fácil de aprender, mas difícil de dominar, por isso se presta a criar uma ampla variedade de desafios. Se você não sabe do que estou falando, aconselho que jogue os primeiros níveis de tutorial do jogo.

Desafio

Seu desafio é criar uma máquina que retorne o último elemento da string de entrada. Para tornar isso ainda mais desafiador, a sequência de entrada pode ser qualquer combinação das quatro cores .

O nível personalizado oficial a ser usado é encontrado aqui:

http://pleasingfungus.com/Manufactoria/?ctm=Last_in_Line!;IN:_a_series_of_colors_OUT:_the_very_last_color; r; 13; 3; 0 ;

O desafio desta semana está principalmente focado na ideia de compressão. Eu escolhi esse desafio para exigir uma enorme bagunça de correias transportadoras. O fato de todas as quatro cores aparecerem na entrada significa que é muito difícil armazenar informações.

Embora eu não tenha tentado compactar, meu primeiro protótipo de trabalho tinha 114 partes e se encaixava no espaço 13x13, quase sem espaço de sobra.

Pontuação

O objetivo deste desafio é usar o menor número possível de partes. A pontuação é o número de peças colocadas e a pontuação mais baixa vence.

Embora haja apenas 8 casos de teste, sua criação deve poder funcionar teoricamente em qualquer caso de teste. Os casos de teste fornecidos são para fins de depuração.

Exemplos

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

Respostas:


6

65 partes

insira a descrição da imagem aqui Para ser sincero, eu não conseguia nem pensar em colocar pares de leitores diretamente um no outro até ver isso nas soluções já postadas. Mas depois comecei a criar muitos truques de otimização.

Ligação


... você pode colocar correias transportadoras em cima umas das outras?
precisa saber é o seguinte

7

4

4

Uma pequena reorganização das correias transportadoras reduziu isso para 81 partes. Veja aqui . Além disso, alterar as cores ao redor parece torná-lo mais rápido (embora realmente não importe) das 6:23 às 5:38. Veja este colar para o URL.
Volatilidade

@ Volatility Obrigado pelas 3 partes. O parece mais rápido depende totalmente os casos de teste, por isso realmente não importa ;-)
Howard

2
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.