Эта головоломка является следующей в моей серии испытаний мануфактуры.
Фон
Мануфактура - это игровой / двумерный язык программирования. Игрок должен создать программы, которые будут манипулировать очередью, чтобы получить желаемый результат. Его легко освоить, но трудно освоить, поэтому он позволяет создавать самые разнообразные задачи. Если вы не знаете, о чем я говорю, советую вам пройти первые несколько обучающих уровней игры.
Вызов
Ваша задача - создать машину, которая будет возвращать самый последний элемент входной строки. Чтобы сделать это еще более сложным, входная строка может быть любой комбинацией всех четырех цветов .
Официальный пользовательский уровень для использования находится здесь:
Задача этой недели в основном сосредоточена на идее сжатия. Я выбрал эту задачу, чтобы требовать огромного беспорядка конвейерных лент. Тот факт, что все четыре цвета отображаются на входе, означает, что хранить информацию очень сложно.
Хотя я не пытался выполнить сжатие, мой первый работающий прототип состоял из 114 частей и помещался в пространство 13x13, почти не оставляя места.
счет
Целью этой задачи является использование нескольких частей, насколько это возможно. Оценка - это количество размещенных деталей, и выигрывает самая низкая оценка.
Хотя существует всего 8 тестовых случаев, ваше творение должно быть в состоянии теоретически функционировать под любым тестовым примером. Тестовые случаи предоставлены для целей отладки.
Примеры
in: byrgyrbyrrgry
out: y
in: ggryybrryr
out: r
in: #don't you love degenerate cases?
out:
in: gyrbrygbrygbyrb
out: b
источник
7369 частейОрганизация в виде полосы, кажется, экономит много устройств. Слева направо столбцы: «последний цвет был желтым», «последний цвет был синим», два столбца устройств, «последний цвет был красным», «последний цвет был зеленым» и «все готово».
http://pleasingfungus.com/Manufactoria/?lvl=35&code=c10:8f2;q11:6f5;i11:7f0;p11:8f5;i12:6f4;q12:7f5;p12:8f5;c13:8f0;i10:7f6 ; i10: 6f6; I13: 6f7; I13: 7f7; с9: 6f3; с9: 7F3; с9: 8f3; Q11: 9F3; Q12: 9F3; с9: 9F2; i10: 9F3; I13: 9F2; G12: 12f3; с10 : 10f1; с13: 11f1; с13: 10f1; с10: 11f1; р12: 2F3; Q12: 3F3; с13: 2F3; I13: 3f5; с11: 2f0; с10: 2F3; i10: 3F1; с11: 3f0; с9: 3F3 ; P11: 11f3; р12: 10f3; I11: 10f1; I12: 11f5; с14: 3F3; с14: 6f3; с14: 7F3; с14: 8f3; с14: 9f0; I14: 4F5; с14: 5F3; I13: 4F5; с13 : 5F3; Y11: 12f3; с11: 13f2; с9: 4F3; с9: 5F3; с10: 4F3; с10: 5F3; B11: 5f1; с11: 4F2; с12: 4F2; с15: 4F3; с15: 5F3; с15: 6f3 ; c15: 8f3; c15: 7F3; c15: 9F3; c15: 10f3; c15: 11f3; c15: 12f3; c15: 13f0; c14: 13f0; c13: 13f0; r12: 5f1; & CTM = Last_in_Line, IN: _a_series_of_colors_OUT: _the_very_last_color; byrgyrbyrrgry: y | bbrrbryyyrrbr: r | ggryybrryr: r | b: b |: | gyrbrygbrygbyrb: b | brbrbryyrygbrg: g | rrrrrrrrr: r; 13; 3 ;
источник
9188 частейВерхний левый гаджет обрабатывает зеленый / синий, нижний правый гаджет - красный / желтый.
http://pleasingfungus.com/Manufactoria/?lvl=35&code=q8:6f5;c8:7f2;c9:5f2;p9:6f4;q9:7f2;i10:5f7;c10:6f0;p10:7f3;i12:6f6 ; I13: 6f6; с13: 11f0; I14: 6f6; P14: 10f3; R14: 11f0; с15: 6f0; р15: 9f6; Q15: 10f0; с15: 11f2; С16: 6f0; Q16: 9f5; С16: 10f0; I16 : 11f3; с17: 6f0; с17: 7F1; с17: 8F1; с17: 9F1; с17: 11f1; B10: 8f2; I11: 8f7; с12: 4F3; с12: 7F3; с12: 8f3; I12: 9f5; I12: 10f1 ; с12: 11f3; I12: 12f5; с14: 3F3; с14: 4F3; с9: 4F2; i10: 4f7; I11: 4f7; с7: 8f2; i8: 8f3; с9: 8f3; с9: 9F2; с10: 9F2; I11 : 9f7; I13: 9f7; с14: 9F2; с13: 10f0; I11: 10f6; с10: 10f0; с9: 10f0; с8: 10f1; с8: 9F1; с15: 7F0; I14: 7F6; I13: 7F6; с15: 8f0 ; I14: 8f6; с13: 8f3; с8: 4F2; С16: 7F0; g8: 5f1; Y16: 8F1; Q12: 3f7; с13: 2F3; I13: 3f5; с13: 4F3; I11: 3F6; с10: 3F3; р12 : 2F7; с11: 2F3; с7: 6f3; с7: 7F3; с11: 5F3; I11: 6f6; с11: 7F3; с12: 5F3; с13: 5F3; с14: 5F3; с17: 10f1; с11: 11f3; с11: 12f2 ; c13: 12f2; c14: 12f2; c15: 12f2; c16: 12f1; & CTM = Last_in_Line, IN: _a_series_of_colors_OUT: _the_very_last_color; byrgyrbyrrgry:у | bbrrbryyyrrbr: г | ggryybrryr: г | Ь: Ь |: | gyrbrygbrygbyrb: б | brbrbryyrygbrg: г | rrrrrrrrrr: г; 13; 3; 0;
источник
99908481 ЗапчастиДа - это путаница конвейерных лент. Но, наконец, значительно меньше, чем 100 частей - также благодаря волатильности.
http://pleasingfungus.com/Manufactoria/?lvl=33&code=p12:9f3;i12:2f1;c11:9f0;c9:8f2;c10:8f2;i11:8f7;i12:8f5;i12:4f5;i12:5f5 ; с12: 6f3; I12: 7F1; I13: 9F3; с14: 8f3; I13: 8f3; Q12: 3F3; Q15: 4f7; р15: 5f7; с14: 5F3; I14: 6F1; I14: 7F1; I13: 7F0; I13 : 6f0; I13: 5F4; с11: 7F3; с10: 7f2; с15: 7F0; С16: 5F3; С16: 7F0; с11: 2F3; с13: 2f0; с14: 2f0; с15: 2f0; С16: 3F1; С16: 4F1 ; С16: 2f0; с17: 4F0; с17: 5f1; с17: 7F1; с17: 8F1; с8: 8F1; с8: 7F1; с8: 5f1; с8: 4F2; С16: 6f3; с17: 6F1; G15: 6f0; с8 : 6F1; с8: 9F1; с8: 10f1; с9: 9F1; с9: 10f0; P10: 9f7; q10: 10f3; B10: 11f2; с11: 10f2; с11: 11f2; I12: 10f5; с12: 11f3; с13: 10f1 ; с13: 11f0; С16: 10f2; с17: 9F1; с17: 10f1; с12: 12f3; P14: 9f7; Q14: 10f7; R14: 11f0; с15: 9F1; с15: 8F1; с15: 10f2; с11: 3F3; q11 : 4F3; p11: 5F3; y11: 6F2; c10: 5F3; c10: 6f3; с9: 4F2; c10: 4F2; c13: 3F3; c13: 4F2; c14: 4F2; & CTM = Last_in_Line, IN: _a_series_of_colors_OUT: _the_very_last_color; byrgyrbyrrgry: у | bbrrbryyyrrbr: г | ggryybrryr: г | Ь: Ь |: | gyrbrygbrygbyrb:б | brbrbryyrygbrg: г | rrrrrrrrrr: г; 13; 3; 0;
источник
75 частей
http://pleasingfungus.com/Manufactoria/?lvl=34&code=c11:9f1;q11:11f3;p11:12f7;g11:13f2;i12:9f1;i12:10f1;i12:11f1;i12:12f5;p13:9f7 ; I13: 11f1; I13: 12f5; I14: 11f0; Q13: 10f3; с14: 9f0; с15: 11f0; с14: 12f1; I14: 10f4; с15: 9F3; с15: 10f3; с10: 12f1; i10: 11f0; i10 : 10f0; с10: 9F1; с9: 11f1; с9: 10f1; с9: 9F1; B13: 13f0; с11: 10f0; с9: 6F2; с9: 7F1; с9: 8F1; с10: 5F3; i10: 6f5; i10: 7F1 ; с10: 8f2; r11: 4F2; I11: 5f0; I11: 6f4; Q11: 7f5; P11: 8F1; с12: 4F3; I12: 5f1; I12: 6f5; I12: 7f5; I12: 8f5; Y13: 4F0; р13 : 5f1; Q13: 6f5; с13: 7f2; с13: 8f3; с14: 5F3; I14: 6f5; I14: 7f5; с14: 8f3; с15: 6f3; с15: 7F3; с15: 8f3; р12: 2F7; Q12: 3F3 ; с11: 3f0; I14: 3f5; с13: 3F2; с15: 3F3; с15: 4F3; с15: 5F3; с14: 4F3; с10: 4F3; с9: 5F3; с9: 4F3; с9: 3F3; с10: 2F3; с14 : 2F3; c13: 2f2; c11: 2f0; i10: 3F1; & CTM = Last_in_Line, IN: _a_series_of_colors_OUT: _the_very_last_color; byrgyrbyrrgry: у | bbrrbryyyrrbr: г | ggryybrryr: г | Ь: Ь |: | gyrbrygbrygbyrb: б | brbrbryyrygbrg: г | rrrrrrrrrr: г; 13; 3; 0;
Да, я знаю, это на шесть частей больше, чем решение Кейта Рэндалла , но что я могу сказать? Мне нравится симметрия.
источник