#5771. 机器人实验
机器人实验
当前没有测试数据。
题目描述
某个机器人领域的实验室正在进行一项有趣的研究。他们在一条直线上放置了 n 个机器人,并让它们以相同的速度沿着给定的方向移动。每个机器人都有一个位置、能量值和移动方向。
所有机器人以相同速度,同时沿给定方向在路线上移动。如果两个机器人移动到相同位置,则会发生碰撞。
然而,由于机器人们的移动路径交叉,往左 (L) 或往右 (R) 移动,它们可能会发生碰撞。一旦两个机器人在相同的位置相遇,它们就会发生碰撞。
在碰撞过程中,能量值较低的机器人将被移除,并且另一个机器人的能量值会减少1,并沿与之前相同的方向继续移动。如果两个机器人的能量值相同,它们都将被移除。
实验室希望你能帮助他们确定经过所有碰撞后,仍然存活的机器人的能量值,并按照原始编号的顺序排列,如果没有机器人存活,则输出 -1。
输入
n 表示机器人个数。
第二行输入 n 个整数,表示每一个机器人的位置 positions[i]。
第三行输入 n 个整数,表示每一个机器人的的能量值 pow[i]。
第四行输入 n 个字符,表示每一个机器人移动的方向。
输出
剩余的每一个机器人的能量值,如果没有机器人存在了,则输出 -1。
样例
输入复制
5
5 4 3 2 1
2 17 9 15 10
RRRRR
输出复制
2 17 9 15 10
输入复制
4
3 5 2 6
10 10 15 12
RLRL
输出复制
14
输入复制
4
1 2 5 6
10 10 11 11
RLRL
输出复制
-1
说明
【样例 1 解释】

位置:5 4 3 2 1
能量值:2 17 9 15 10
移动方向:RRRRR
机器人们以相同的速度向右移动。
它们不会导致碰撞,所以,能量值并不会改变。
因此,剩余的机器人能量值输出为 2 17 9 15 10。
【样例 2 解释】

位置:3 5 2 6
能量值:10 10 15 12
移动方向:RLRL
机器人们以相同的速度移动,直到发生碰撞。
机器人1和机器人2在位置 4 发生碰撞,两个机器人能量值相同,因此碰撞后都被移走。机器人3和机器人4再次碰撞,机器人4被移走,机器人3的能量值减 1,能量值变为 14。
最终剩余的机器人能量值为 14。
因此,输出为 14。
【样例 3 解释】

位置:1 2 5 6
能量值:10 10 11 11
移动方向:RLRL
机器人们以相同的速度移动,直到发生碰撞。
机器人 1 和机器人 2 将会碰撞,因为二者能量值相同,二者都将被从路线中移除。
同理,机器人 3 和机器人 4 将会碰撞,同样被移除。
最终没有机器人存活,因此输出为 −1。
【数据范围】
机器人的移动方向,只可能是 L 或者 R 。
30% 的数据满足:1≤n≤10,1≤positions[i]≤1,1≤pow[i]≤1。
60% 的数据满足:1≤n≤1,1≤positions[i]≤1,1≤pow[i]≤1。
100% 的数据满足:1≤n≤3×1,1≤positions[i]≤1,1≤pow[i]≤1。
注意:位置 positions 可能是乱序的,每个机器人的初始位置互不相同。测试数据确保无论怎样碰撞,没有被移除的机器人的能量值始终是非负整数。