Ця головоломка є черговим у моїй серії «Мануфактурних викликів».
Фон
Manufactoria - це ігрова / двовимірна мова програмування. Гравець повинен створити програми, які будуть маніпулювати чергою, щоб отримати бажаний вихід. Навчитися легко, але важко освоїти, тому він схильний створювати найрізноманітніші виклики. Якщо ви не знаєте, про що я говорю, раджу пограти в перші кілька підручників гри.
Виклик
Ваше завдання - створити машину, яка поверне останній елемент вхідного рядка. Щоб зробити це ще більш складним, вхідним рядком може бути будь-яке поєднання всіх чотирьох кольорів .
Офіційний спеціальний рівень, який слід використовувати, можна знайти тут:
http://pleasingfungus.com/Manufactoria/?ctm=Last_in_Line!; r; 13; 3; 0 ;
Проблема цього тижня в основному зосереджена на ідеї стиснення. Я вибрав цей виклик, щоб вимагати величезного безладу конвеєрних стрічок. Те, що всі чотири кольори відображаються на вводі, означає, що дуже важко зберігати інформацію.
Хоча я і не намагався стиснути, мій перший працюючий прототип мав 114 частин і вміщувався в простір 13х13, майже не маючи запасного місця.
Оцінка балів
Мета цього завдання - використовувати якомога більше частин. Оцінка - кількість розміщених частин, а найнижча оцінка виграє.
Хоча існує лише 8 тестових випадків, ваша творчість повинна бути здатна теоретично функціонувати в будь-якому тестовому випадку. Наведені тестові випадки призначені для налагодження.
Приклади
in: byrgyrbyrrgry
out: y
in: ggryybrryr
out: r
in: #don't you love degenerate cases?
out:
in: gyrbrygbrygbyrb
out: b