CF2185E.The Robotic Rush
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
在一条无限长的数轴上,有 n 个机器人和 m 个尖刺,每个都位于数轴的某个特定位置。第 i 个机器人位于位置 ai,第 i 个尖刺位于位置 bi。如果一个机器人碰到一个尖刺,它就会死亡。
共有 k 条指令被传达给机器人,每条指令要么是向左移动一单位,要么是向右移动一单位。
对于每个 i(1≤i≤k),输出在前 i 条指令执行后,仍然存活的机器人数量。
输入格式
输入的第一行包含一个整数 t(1≤t≤104),表示测试用例的数量。
每个测试用例的第一行包含三个整数 n,m,k(1≤n,m,k≤2⋅105)——机器人数量、尖刺数量和指令数。
第二行包含 n 个整数 a1,a2,…,an(0≤ai≤109),表示机器人的位置。保证所有 a 均互不相同。
第三行包含 m 个整数 b1,b2,…,bm(0≤bi≤109),表示尖刺的位置。保证所有 b 均互不相同。
第四行包含一个长度为 k 的字符串,表示传递给机器人的指令。每个字符为 L(向左移动一位)或 R(向右移动一位)。
保证所有测试用例中,n,m,k 的总和不超过 2⋅105。
额外约束:保证没有机器人和尖刺处于同一位置。
输出格式
输出 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
说明/提示
对于第一个测试用例:
- 第一个机器人将依次移动到 0→−1→0→1,因此不会死亡。
- 第二个机器人将依次移动到 1→0→1→2,所以在第三条指令执行后会死亡,因为 2 处有尖刺。
对于第二个测试用例,两个机器人在移动一次后都会死亡。