程序员升职记第14年最大值室怎么过
来源:网络收集 点击: 时间:2024-04-07游戏要求将inbox的两个数值做比较,大的一个放进outbox,若两个数相等可二选其一放置,直到inbox里的数全部清空为止。

思路很简单,这是沫沫之前编写的程序,虽然最后全部清空了,但是领导并不满意,因此必须寻去更简洁的办法。


按照下图要求输入程序,沫沫讲解一下思路:先将拿到的第一个数值复制到地毯上,再从inbox中选择第二个数字添加sub代码使二者相减,若是负数则说明地毯上的数值要大,因此可以执行将其从地毯上copyfrom复制到outbox,这里很好理解,关键是下一步。

若是头脑愚钝点的,像沫沫这样,很可能输入一大串代码才能清空所有数据,会自然而然地分为等于0和大于0两种情况来写代码,但是这里其实不用。
若是第一轮相减过后不是小于0的情况,后面相减的结果一定大于或等于0,因此手持的数一定会大于或等于地毯上的数。
假设地毯上的数是2,而我们手持的是3,3+2=5,则我们将手里的数直接丢进outbox;
假设地毯上的数是2,而我们手持的也是2,2+2=4,这时候我们同样可以执行将手里的数直接丢进outbox。(负数也是一样的道理)
因此在这里我们添加add代码,结果一定是正数,直接将手持的数放进outbox即可。

如图,这样就基本完成了代码设置,接下来再添加一个向下的jump代码省略copyfrom和outbox代码即可成功通关。

如图,完全符合诊断条件。

版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_450554.html