CF1481A.Space Navigation

传统题 时间 2000 ms 内存 256 MiB 3 尝试 1 已通过 1 标签

Space Navigation

题目描述

你梦见自己正驾驶着私人飞船前往名为 Planetforces 的星球。不幸的是,飞船的驾驶系统出现了故障,现在你需要修复它才能到达 Planetforces。

太空可以用 XYXY 平面表示。你从点 (0,0)(0, 0) 出发,Planetforces 位于点 (px,py)(p_x, p_y)

你的飞船驾驶系统会按照一串指令 ss 行动。系统会从左到右读取 ss。假设你当前在点 (x,y)(x, y),当前指令为 sis_i

  • 如果 si=Us_i = \text{U},你会移动到 (x,y+1)(x, y + 1)
  • 如果 si=Ds_i = \text{D},你会移动到 (x,y1)(x, y - 1)
  • 如果 si=Rs_i = \text{R},你会移动到 (x+1,y)(x + 1, y)
  • 如果 si=Ls_i = \text{L},你会移动到 (x1,y)(x - 1, y)

由于字符串 ss 可能已损坏,你最终可能无法到达 Planetforces。幸运的是,你可以从 ss 中删除一些指令(可以为零),但不能改变它们的顺序。

你能否通过删除若干指令(可能为零),使得系统执行完所有指令后,你正好到达 Planetforces?

输入格式

第一行包含一个整数 tt1t10001 \le t \le 1000),表示测试用例的数量。

每个测试用例包含两行。每个测试用例的第一行包含两个整数 pxp_xpyp_y105px,py105-10^5 \le p_x, p_y \le 10^5(px,py)(0,0)(p_x, p_y) \neq (0, 0)),表示 Planetforces 的坐标 (px,py)(p_x, p_y)

第二行包含字符串 ss1s1051 \le |s| \le 10^5s|s| 表示字符串 ss 的长度),表示指令序列。

保证所有测试用例中 s|s| 的总和不超过 10510^5

输出格式

对于每个测试用例,如果你可以通过删除若干指令(可能为零)使得你能到达 Planetforces,输出 "YES";否则输出 "NO"。你可以用任意大小写输出答案。

说明/提示

在第一个样例中,你无需修改 ss,因为给定的 ss 能直接带你到达 Planetforces。

在第二个样例中,你可以删除 s2s_2s3s_3s4s_4s6s_6s7s_7s8s_8,使 ss 变为 "UR"。

在第三个样例中,你必须删除 s9s_9,否则你无法停在 Planetforces 的位置。

由 ChatGPT 4.1 翻译

样例

6
10 5
RRRRRRRRRRUUUUU
1 1
UDDDRLLL
-3 -5
LDLDLDDDR
1 2
LLLLUU
3 -2
RDULRLLDR
-1 6
RUDURUUUUR
YES
YES
YES
NO
YES
NO

在线编程 IDE

建议全屏模式获得最佳体验