#abc051c. [abc051_c]Back and Forth

[abc051_c]Back and Forth

题目描述

海豚生活在二维笛卡尔坐标系中,其中正 xx 轴向右,正 yy 轴向上。
当前,海豚位于点 (sx,sy)(sx,sy)。每秒钟,它可以向上、向下、向左或向右移动 11 个单位。
这里,每次移动前后的 xxyy 坐标都必须是整数。
它首先会访问点 (tx,ty)(tx,ty),其中 sx<txsx < txsy<tysy < ty,然后返回到点 (sx,sy)(sx,sy),再次访问点 (tx,ty)(tx,ty),最后返回到点 (sx,sy)(sx,sy)
在整个旅行过程中,除了点 (sx,sy)(sx,sy)(tx,ty)(tx,ty),它不允许经过同一个点超过一次。
在此条件下,找到海豚的最短路径。

约束条件

  • \-1000sx<tx1000\-1000 ≤ sx < tx ≤ 1000
  • \-1000sy<ty1000\-1000 ≤ sy < ty ≤ 1000
  • sx,sy,txsx,sy,txtyty 是整数。

输入

输入以以下格式从标准输入中给出:

sxsx sysy txtx tyty

输出

输出一个字符串 SS,表示海豚的最短路径。
SS 中的第 ii 个字符应该对应他的第 ii 次移动。
移动的方向应由以下字符表示:

  • U:向上
  • D:向下
  • L:向左
  • R:向右

如果在满足条件的情况下存在多条最短路径,打印其中任意一条即可。

示例输入 1

0 0 1 2

示例输出 1

UURDDLLUUURRDRDDDLLU

一个可能的最短路径是:

  • 第一次从 (sx,sy)(sx,sy) 移动到 (tx,ty)(tx,ty)(0,0)(0,0)(0,1)(0,1)(0,2)(0,2)(1,2)(1,2)
  • 第一次从 (tx,ty)(tx,ty) 移动到 (sx,sy)(sx,sy)(1,2)(1,2)(1,1)(1,1)(1,0)(1,0)(0,0)(0,0)
  • 第二次从 (sx,sy)(sx,sy) 移动到 (tx,ty)(tx,ty)(0,0)(0,0)(1,0)(-1,0)(1,1)(-1,1)(1,2)(-1,2)(1,3)(-1,3)(0,3)(0,3)(1,3)(1,3)(1,2)(1,2)
  • 第二次从 (tx,ty)(tx,ty) 移动到 (sx,sy)(sx,sy)(1,2)(1,2)(2,2)(2,2)(2,1)(2,1)(2,0)(2,0)(2,1)(2,-1)(1,1)(1,-1)(0,1)(0,-1)(0,0)(0,0)

示例输入 2

-2 -2 1 1

示例输出 2

UURRURRDDDLLDLLULUUURRURRDDDLLDL