免责声明:这个问题中讲的故事完全是虚构的,仅出于介绍目的而发明。
我的老板得到了一个新的玩具机器人,他要我帮忙编程。他希望能够输入简单的箭头说明使其移动。这些指令是:^(向前移动)<(向左转)和>(向右转)。但是,既然我已经对机器人进行了编程,他就需要其他功能。他希望我变换他输入的任何箭头序列,以使机器人能够有效地移动到所需位置,而不是让机器人按照指示的路径移动,而移动到所需的位置,该位置由如果走过输入的路径将会到达的位置指示可能。我呼吁您,PP&CG的成员,帮助我完成此任务。
你的任务:
编写程序或函数以将由箭头组成的字符串转换为字符串,该字符串将尽快到达输入所指示的位置。旋转所需的时间恰好是向后或向前移动的时间。
输入:
一串箭头,如上所述。如果您愿意,可以用其他字符代替箭头,但请务必在回答中包括您这样做的事实。所有测试用例均正常使用箭头。
输出:
一串箭头(或您的等效字符),这些箭头可以使机器人尽可能高效地到达所需的目的地。
测试用例:
请注意,提供的解决方案仅是可能性,其他解决方案可能是有效的。
>^<<^^>^^ -> ^^<^
^^^^>^^^^ -> ^^^^>^^^^
>>>^^^^^^ -> <^^^^^^
>^>^>^>^ -> (empty string)
^<^^<^^<^^^^ -> >^^>^
得分:
机械手的内存有限,因此您的程序必须具有最低的字节数。
^<^^<^^<^^^^
-> >^^>^
?