【蓝桥杯每日一练:不论你距我多远,哪怕刀山火海我愿为你走天下】

问题描述

小T和她的男神位于一个二维坐标平面上,x和y轴的正方向分别是水平向右和竖直向上。
小T位于点(sx, sy),男神位于点(tx, ty),满足男神在小T的右上方。
小T到每次可以向上或向下或向左或向右移动一个单位,她要到他的身旁(tx, ty),再回到她自己原来的位置(sx, sy),再回到他的身旁(tx, ty),再回到自己原来的位置(sx, sy)。
请输出一种最短的走法,满足:除了(sx, sy)和(tx, ty)外,不经过同一个点两次。

输入格式

一行用空格隔开的4个整数sx, sy, tx, ty (-1000≤sx, sy, tx, ty≤1000)
代表小T的起始位置(sx, sy)和男神的位置(tx, ty)

输出格式

输出一种小T的合法路径,分别用UDLR来代表每一步的上下左右,具体可见样例及解释
请按样例的方式来走QAQ

输入样例

0 0 1 2

输出样例

UURDDLLUUURRDRDDDLLU

【提示】

从(sx, sy)到(tx, ty):(0,0)->(0,1)->(0,2)->(1,2)
从(tx, ty)到(sx, xy):(1,2)->(1,1)->(1,0)->(0,1)
从(sx, sy)到(tx, ty):(0,0)->(-1,0)->(-1,1)->(-1,2)->(-1,3)->(0,3)->(1,3)->(1,2)
从(tx, ty)到(sx, xy):(1,2)->(2,2)->(2,1)->(2,0)->(2,-1)->(1,-1)->(0,-1)->(0,0)

代码

sx,sy,tx,ty=map(int,input().split())
x=tx-sx
y=ty-sy
for i in range(y):
    print('U',end='')
for j in range(x):
    print('R',end='')
for a in range(y):
    print('D', end='')
for b in range(x):
    print('L', end='')
print('L',end='')
for c in range(y+1):
    print('U',end='')
for d in range(x+1):
    print('R',end='')
print('D',end='')
print('R',end='')
for e in range(y+1):
    print('D',end='')
for f in range(x+1):
    print('L',end='')
print('U',end='')

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zjf时空方程

感谢各位的支持,我一定会努力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值