CF2185E.The Robotic Rush

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

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

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

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

输入格式

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

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

第二行包含 nn 个整数 a1,a2,,ana_1, a_2, \ldots, a_n0ai1090 \le a_i \le 10^9),表示机器人的位置。保证所有 aa 均互不相同。

第三行包含 mm 个整数 b1,b2,,bmb_1, b_2, \ldots, b_m0bi1090 \le b_i \le 10^9),表示尖刺的位置。保证所有 bb 均互不相同。

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

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

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

输出格式

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

对于 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

说明/提示

对于第一个测试用例:

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

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

首页