171AC - ABC051C: Back and Forth

ABC51-C (300 points)
問題

 2 (sx, sy), (tx, ty) 間を, 途中で同じ座標を複数回通らないように  2 往復するとき, 最短経路を求める.

  •  -10^3 \leq sx < tx \leq 10^3
  •  -10^3 \leq sy < ty \leq 10^3
  • 入力は全て整数.
方針
  •  1 往復目は素直に行けば良い.
  •  2 往復目は, 上下左右に  1 だけ余分に移動すればOK.
# input
sx, sy, tx, ty = map(int, input().split())

for i in range(ty - sy):
    print('U', end = "")

for i in range(tx - sx):
    print('R', end = "")

for i in range(ty - sy):
    print('D', end = "")

for i in range(tx - sx):
    print('L', end = "")

print('L', end = "")

for i in range(ty - sy + 1):
    print('U', end = "")

for i in range(tx - sx + 1):
    print('R', end = "")

print('D', end = "")

print('R', end = "")

for i in range(ty - sy + 1):
    print('D', end = "")

for i in range(tx - sx + 1):
    print('L', end = "")