题库练习 The Robotic Rush
← 上一题 下一题 →

A16484 | The Robotic Rush

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

在一条无限长的数轴上,有 $n$ 个机器人和 $m$ 个尖刺,每个都位于数轴的某个特定位置。第 $i$ 个机器人位于位置 $a_i$,第 $i$ 个尖刺位于位置 $b_i$。如果一个机器人碰到一个尖刺,它就会死亡。

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

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

输入格式

输入的第一行包含一个整数 $t$($1 \leq t \leq 10^4$),表示测试用例的数量。

每个测试用例的第一行包含三个整数 $n, m, k$($1 \le n, m, k \le 2 \cdot 10^5$)——机器人数量、尖刺数量和指令数。

第二行包含 $n$ 个整数 $a_1, a_2, \ldots, a_n$($0 \le a_i \le 10^9$),表示机器人的位置。保证所有 $a$ 均互不相同。

第三行包含 $m$ 个整数 $b_1, b_2, \ldots, b_m$($0 \le b_i \le 10^9$),表示尖刺的位置。保证所有 $b$ 均互不相同。

第四行包含一个长度为 $k$ 的字符串,表示传递给机器人的指令。每个字符为 $\texttt{L}$(向左移动一位)或 $\texttt{R}$(向右移动一位)。

保证所有测试用例中,$n, m, k$ 的总和不超过 $2 \cdot 10^5$。

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

输出格式

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

对于 Python 用户,提交时请务必选择 PyPy3/PyPy2,而不是 Python3/Python2。

输入输出样例

输入 #1
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
输出 #1
2 2 1 
0 0 0 
3 2 2
C++ 编辑器
输入
输出