#553. 机器人

机器人

题目描述

在一条无限长的数轴上,有 nn 个机器人和 mm 个尖刺,每个都位于数轴的某个特定位置。第 ii 个机器人位于位置 aia_i,第 ii 个尖刺位于位置 bib_i。如果一个机器人碰到一个尖刺,它就会死亡。

共有 kk 条指令被传达给机器人,每条指令要么是向左移动一单位,要么是向右移动一单位。

对于每个 ii1ik1 \leq i \leq k),输出在前 ii 条指令执行后,仍然存活的机器人数量。

输入格式

本题有多组数据

第一行输入一个整数 tt 表示测试数据组数。对于每一组数据:

  • 第一行输入三个整数 n,m,kn,m,k,分别表示机器人数量、尖刺数量和指令数。
  • 第二行输入 a1,a2,,ana_1,a_2,\ldots,a_n 表示机器人的初始位置。
  • 第三行输入 b1,b2,,bmb_1,b_2,\ldots,b_m 表示尖刺的位置。
  • 第四行包含一个长度为 kk 的字符串,表示传递给机器人的指令。每个字符为 L\texttt{L}(向左移动一位)或 R\texttt{R}(向右移动一位)。

输出格式

输出 kk 个整数,第 ii 个整数表示前 ii 条指令执行后存活的机器人数量。

3
2 1 3
0 1
2
LRR
2 3 3
2 4
1 3 5
LRL
3 2 3
1 3 7
9 6
RRL
2 2 1 
0 0 0 
3 2 2

提示

样例解释

对于第一个测试用例:

  • 第一个机器人将依次移动到 01010 \rightarrow -1 \rightarrow 0 \rightarrow 1,因此不会死亡。
  • 第二个机器人将依次移动到 10121 \rightarrow 0 \rightarrow 1 \rightarrow 2,所以在第三条指令执行后会死亡,因为 22 处有尖刺。

对于第二个测试用例,两个机器人在移动一次后都会死亡。

数据范围

对于 100%100\% 的数据满足:1t1041\leq t\leq 10^40ai,bi1090\le a_i,b_i\leq 10^9。保证所有测试用例中,n,m,kn, m, k 的总和不超过 21052 \cdot 10^5

额外约束:保证没有机器人和尖刺处于同一位置。

  • 子任务 1(3030 分):n,m,k100n,m,k\leq 100
  • 子任务 2(3030 分):n,k2000n,k\leq 2000
  • 子任务 3(4040 分):无特殊限制。