7 Billion Humans

7 Billion Humans

Not enough ratings
当个傻瓜,提高效率
By 西红柿方便面
减少使用判断语句,容忍错误,能提高效率
   
Award
Favorite
Favorited
Unfavorite
游戏的特性
凡是受过一定数理基础教育,懂一点编程的编程技巧的玩家,提出的解决方案往往不是最优解。这是因为他们考虑问题太过于周全繁琐。实际上,当个傻瓜,效率更高。
这个游戏有很多奇葩并且不符合常理的设定。我先举个例子吧:即使你面前是一堵墙,你依然可以用step命令去撞墙,你并不因为撞墙而死。

这样的例子有一卡车:
即使你手里有东西,也可以用Pick命令,小人只会给你Warning并不会报错。
你手里没有任何东西,也可以Drop。
比较语句,不检查运算符左右是否类型匹配,你可以拿着箱子和墙比大小,也可以空手去跟地板比大小。

我刚开始 玩的时候,甚至害怕撞到另外一个小人身上。后来发现这都是杞人忧天。

那么问题就来了,如何提高效率,减少运行时间。这游戏每一条判断语句IF都占用1s时间,如果有一条and或者or那么还要额外加一秒。所以无脑行动效率最高。
比方说,你要把手里的箱子递给左边的人。你不必关心自己是否手持箱子,也不必关心左边人是否已经有手持箱子,甚至不必关心左边是否有人,哪怕左边是一堵墙也行!你就只管GiveTo West。这就是效率最高,代码最少。尽管这样做会,小人会不断报告Warning。
2 Comments
IsaacLeibniz 22 Jun, 2021 @ 4:59am 
乱报warning是隐藏在时间挑战背后最大的难点,内存内的计算、读取位置方块上数字(而不是内存数字)同样如此
1^Bit_Crazy 10 Feb, 2021 @ 12:59pm 
兄弟。。报Warning也是要浪费时间的,他会原地傻愣着喊一句啥都没得捡之类的话,否则准确的IF判断做到跳出判断可以让先工作完的小人开始下一步工作,并且要他不要喊话,赶紧下一步,是可以有效提高效率的,别人还在傻乎乎撞墙和你看见墙开始下一步工作哪个更有效率心里有数的呀,多一条And和Or是比直接Warning来的快的,除非是堆栈要先进后出的,或者是同步操作要BB一句大家才继续干活的,平时队列任务直接先进就先出,后进就后出,完成任务一个END来的要快太多了