127. 【应-10-2·难】按键边界 clamp

中等 Python 2s 256MB
通过 0/0

📋 题目描述
飞机仍由按键 U/D/L/R 控制移动,但屏幕大小是 W × H,有效坐标范围是 [0, W-1] × [0, H-1]。每按一次方向键,先按规则 (U:y-1, D:y+1, L:x-1, R:x+1) 移动一步,再 clamp 到屏幕内(即 x = max(0, min(W-1, x)),y 同理)。 请输出整个按键序列结束后的最终坐标 `x y`。
📥 输入描述
第一行四个整数 W H x y(W、H>=1,0<=x<W,0<=y<H)。 第二行一个由字符 U/D/L/R 组成的字符串(长度 0~10000)。
📤 输出描述
一行两个整数 x y。
输入样例
5
5
0
0
RRRRR
输出样例
4 0
提示:关键:每一步移动后立即 clamp,否则会出现"先出去再回来"的偏差。 可以用 `min(max(v, 0), bound)` 或 `sorted([0, v, bound])[1]`。

登录后提交代码

讨论区 0
登录后参与讨论

还没有讨论,来发表第一条吧!