详细信息
- 当前版本: v1.0.4
- 更新时间: 2023-10-30 12:16:33
- 下载类型: 安卓
70亿人游戏是一个趣味解谜编程游戏玩法相当的丰富,入门级的玩法,可玩性非常高,不妨来一起下载游玩吧。
多线程,且互相干扰
进入游戏,发现小人不再是一个了,也就是帮你完成任务的“机器”不再是单线了。
而由于两个小人不能站到同一个格子上的特性,这些线程之间很有可能互相影响,同时他们也不会在代码段的同一行。
在难一点的挑战中你甚至要安排他们执行代码的时间差。
这样做自然大大加深了思考难度,但是充分利用还是很有趣的。
同时,很有可能同一段代码段对于不同的输入来说能否成功是不确定的,在HRM中必须要100%成功率才算通关,但是7BH里50%以上即可。
50%以下由于目前的bug会直接闪退,不保存代码!注意测试前先退出一遍关卡来保存!
另外对算法大佬们有个不幸的消息:时间复杂度基本上是算不出来了,因为后期大部分解法都是有随机性的。
代码语法不再是纯汇编,而是汇编和高级语言的结合
70亿人,在由人组成的电脑中,设法将办公室员工自动化,解抉谜题。 这是获奖作品人力资源机器的精采续作。现在可命令更多的人类! 更加刺激! 谜题增加、人类增加、也更花脑力。
指令数量挑战:
规则:使用的代码行数少于系统规定的行数
代码尽量复用就不说了,是程序员都懂,只针对游戏本身的规则注意以下原则
1.选取简单的方案,尽量通过重复简单动作达成
2.不要追求代码优雅,比如确保工人不死或所有动作完成后工人动作结束,除非工人乱动会影响后续结果
3.如果必要,不写判断。
比如拿起一个方块之前如果不判断手中无方块并且地上有方块,工人就会报一个错误,这会增加执行时间。即使因此导致某些情况下代码执行超时也无所谓,反正有任意一次能执行成功就可以了
速度挑战:
规则:在一倍速下运行所需要的真实时间。由于有些关卡存在随机数和随机行走问题导致时间不确定,取25次的平均值。
1.可以选取稍微复杂但更有效率的方案,比如需要多人配合的。但不要追求复杂。很多情况下简单的也是有效的。
2.如无必要,不做判断。判断也需要时间,尤其是需要与周围进行对比的。
如果需要根据不同的初始位置执行不同的动作,那么最好在一开始就做好判断,而不要在不断的问“我是谁?”的过程中耗尽时间
3.一切为了效率,即使偶尔会执行失败,只要平均时间短就足够了
名词解释
为方便书写和避免歧义,以下代码采用C语言语法书写,一句代码一行,结尾不写分号
对于游戏中自定义物体和函数,将用代码代替,代码中将不会出现中文
以英文版游戏中的命名方式为基础全部做了简化处理
反正你也没法把这些代码直接粘到游戏里去,能看懂就行了
命名方式如下
【方位和物体】
上→n //short for ‘north’
下→s //short for ‘south’
左→w //short for ‘west’
右→e //short for ‘east’
中→c //short for ‘center’
左上→nw
左下→sw
右上→ne
右下→se
任意方向→anyDir
我的物件→myItem
某个东西→something //完全等同于非空,是个多余的东西,以下代码绝对不会用到
无→null
一个数据方块→dataCube
一名工人→worker
一个洞→hole
一堵墙→wall
粉碎机→shredder
打印机→printer
记忆体1→mem1
记忆体2→mem2
记忆体3→mem3
记忆体4→mem4
【命令】
行走→step+方向
拿起→pickUp
放下→drop
写下→write
给出→giveTo
拿取→takeFrom
最接近的→nearest
计算→=
设置为→=
如果→if
否则→else
结束如果→endif
跳转→goto
跳转到→loop
举例:
loop 1
goto 1
//注意数字是一一对应的,涉及到多个跳转的时候要看好
//以下代码涉及到的跳转一定是大跳转包含小跳转,不存在交叉跳转的情况
//如果出现此情况,说明抄代码的时候抄窜行了
终止→end //基本上是个鸡肋,以下基本不会用到此命令(有个别极特殊情况不得不用)
//我一直认为好的程序完全可以用if保证程序进入正确的分支,而不使用end
//end除了让可读性变差,让人摸不清思路,没有什么好的作用
巡视→forEachDir as
巡视结束→endForEach
告诉→tell
聆听→listen
全新趣味解谜编程手游,游戏非常考验你的逻辑思维能力,每个关卡都是非常烧脑的,喜欢解谜的小伙伴们快来下载吧!