这个难题是我的系列制造商挑战中的下一个。
制造商是一种游戏/二维编程语言.播放机必须创建程序来操作队列以达到所需的输出。它容易学习,但很难掌握,因此它有助于创造各种各样的挑战。如果你不知道我在说什么,我建议你玩游戏的前几个教程级别。
您的挑战是创建一台将返回输入字符串的最后一个元素的机器。为了使这更具有挑战性,输入字符串可以是所有四种颜色的任意组合。
要使用的官方定制级别在这里找到:
http://pleasingfungus.com/Manufactoria/?ctm=Last_在……里面_排队!;进入:_一个_系列_的_颜色_退出:_这个_非常_最后的_color;byrgyrbyrrgry:y|bbrrbryyyrrbr:r|ggryybrryr:r|b:b|:|gyrbrygbrygbyrb:b|brbrbryyrygbrg:g|rrrrrrrrrr:r;13;3;0;
本周的挑战主要集中在压缩的概念上。我之所以选择这个挑战,是因为我需要大量的传送带。所有四种颜色都出现在输入中,这意味着很难存储信息。
虽然我没有尝试压缩,但我的第一个工作原型有114个部件,安装在13x13空间中,几乎没有多余的空间。
这一挑战的目标是尽可能使用几个部分。分数是部分放置的数量,最低的得分获胜。
尽管只有8个测试用例,但是您的创建应该能够在任何测试用例下从理论上发挥作用。提供的测试用例用于调试。
in: byrgyrbyrrgry
out: y
in: ggryybrryr
out: r
in: #don't you love degenerate cases?
out:
in: gyrbrygbrygbyrb
out: b发布于 2014-08-19 15:04:45

老实说,直到我在已经发布的解决方案中看到了这一点,我才能想出把一对读者直接对立在一起的想法。但后来我开始想出许多优化技巧。
链接
发布于 2014-02-01 20:45:36

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;c14:9f0;c15:11f0;c14:12f1;i14:10f4;c15:9f3;c15:10f3;c10:12f1;i10:11f0;i10:10f0;c10:9f1;c9:11f1;c9:10f1;c9:9f1;b13:13f0;c11:10f0;c9:6f2;c9:7f1;c9:8f1;c10:5f3;i10:6f5;i10:7f1;c10:8f2;r11:4f2;i11:5f0;i11:6f4;q11:7f5;p11:8f1;c12:4f3;i12:5f1;i12:6f5;i12:7f5;i12:8f5;y13:4f0;p13:5f1;q13:6f5;c13:7f2;c13:8f3;c14:5f3;i14:6f5;i14:7f5;c14:8f3;c15:6f3;c15:7f3;c15:8f3;p12:2f7;q12:3f3;c11:3f0;i14:3f5;c13:3f2;c15:3f3;c15:4f3;c15:5f3;c14:4f3;c10:4f3;c9:5f3;c9:4f3;c9:3f3;c10:2f3;c14:2f3;c13:2f2;c11:2f0;i10:3f1;&ctm=Last_在……里面_排队!;进入:_一个_系列_的_颜色_退出:_这个_非常_最后的_color;byrgyrbyrrgry:y|bbrrbryyyrrbr:r|ggryybrryr:r|b:b|:|gyrbrygbrygbyrb:b|brbrbryyrygbrg:g|rrrrrrrrrr:r;13;3;0;
是的,我知道,这比基思·兰德尔解多六部分,但我能说什么呢?我喜欢对称。
https://codegolf.stackexchange.com/questions/11859
复制相似问题