小学论坛

 找回密码
 立即注册
查看: 100|回复: 1

奇怪编码

[复制链接]

28万

主题

28万

帖子

84万

积分

论坛元老

Rank: 8Rank: 8

积分
848531
发表于 2016-8-13 13:54:45 | 显示全部楼层 |阅读模式

          
          

  •        

      12
                                      从空中放下两列火车,每列火车都带着降落伞,降落到一条没有尽头的笔直的铁道上。两列火车之间的距离不清楚。两列车都面向同一个方向。在落地后,降落伞掉在地上,与火车分离。两列火车都有一个微芯片,可以控制它们的运动。两个芯片是相同的。两列火车都不知道自己的位置。你需要在芯片中写入编码,让这两列火车相遇。每行编码都有一定的执行命令的时间。
      点击下页查看答案:
  • 回复

    使用道具 举报

    0

    主题

    1万

    帖子

    3万

    积分

    论坛元老

    Rank: 8Rank: 8

    积分
    31364
    发表于 2016-8-13 14:38:23 | 显示全部楼层

           
              
              

  •        

      12
                                   
      你能使用以下指令(而且只能用这些指令):
      MF—让火车朝前开
      MB—让火车朝后开
      IF(P)—如果火车旁边有降落伞,这个条件就得到了满足。
      GOTO
      答案:
      A:MF
      IF(P)
      GOTO B
      GOTO A
      B:MF
      GOTO B
      解释:第一行只是让它们离开各自的降落伞。必须让它们离开自己的降落伞,这样后面的火车才能发现前面火车的降落伞,这样就满足了一个条件,它们就可以跳出起初遵守的编码。它们起初都在A这部分循环,直到后面的火车发现前面火车的降落伞,这时就转入B:并陷入B的循环。前面的火车还是没有找到降落伞,所以就不停地在A里面循环。由于每行编码都有一定的执行命令时间,完成A循环就比完成B费时,因此后面的火车(在B循环中)最终将赶上前面的火车。

  • 回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    小黑屋|手机版|Archiver|新都网

    GMT+8, 2025-8-1 00:04 , Processed in 0.047242 second(s), 8 queries , WinCache On.

    Powered by Discuz! X3.4

    © 2001-2017 Comsenz Inc.

    快速回复 返回顶部 返回列表