2
帮助我们的机器人到达传送器
更新:添加了一个Python框架来开始。 太空站已经被破碎机器人取代。在站点自毁之前,您必须将许多昂贵且易碎的被称为“兔子”的高科技机器人引导到出口传送带,但是破碎机器人正在走廊上巡逻。 您的程序将获得一个ASCII映射,并且每转都会告诉破碎机器人在哪里以及您当前的兔子在哪里。然后,您的程序应将兔子移向出口传送带,同时避开破碎机器人。 执行 使用以下命令运行Python 2控制器: python controller.py <mapfile> <turns> <seed> <runs> <prog>... <prog> can be <interpreter> <yourprog> or similar. 种子是用于破碎机和程序PRNG的小整数,因此运行是可重复的。不管实际使用的种子如何,您的程序都应一致地执行。如果种子为零,则控制器将为每次运行使用随机种子。 控制器将使用地图文本文件的名称和种子作为参数来运行您的程序。例如: perl wandomwabbits.pl large.map 322 如果您的程序使用PRNG,则应使用给定的种子对其进行初始化。然后,控制器通过STDIN发送程序更新,并通过STDOUT读取兔子的运动。 控制器每转一圈将输出3行: turnsleft <INT> crusher <x,y> <movesto|crushes> <x,y>; ... rabbits <x,y> <x,y> ... 然后等待程序输出一行: move <x,y> to <x,y>; ... 更新:在控制器发送第一行之前,您的程序将有2秒钟的初始化时间。 如果您的程序在输入控制器兔子位置后花了0.5秒以上的时间来响应移动,则控制器将退出。 如果网格上没有兔子,则Rabbits行将没有值,并且您的程序应输出一条裸露的“ move”字符串行。 请记住,每转一圈都要刷新程序输出流,否则控制器可能会挂起。 …