CF699A.Launch of Collider

传统题 时间 2000 ms 内存 256 MiB 5 尝试 1 已通过 1 标签

Launch of Collider

题目描述

很快,一台新型、强大且不同寻常的对撞机即将启动,它沿一条直线安置。共有 nn 个粒子会被发射到其中,所有粒子都排列在一条直线上,且不存在两个及以上粒子位于同一点。每个粒子的坐标与距离对撞机中心的距离(单位:米)相同,xix_i 表示第 ii 个粒子的坐标及其在对撞机中的位置。所有粒子的位置坐标均为偶数整数。

你已知每个粒子的运动方向——在对撞机启动后,每个粒子要么向右运动,要么向左运动。所有粒子会在对撞机启动的瞬间同时开始移动。每个粒子都将以每微秒 11 米的恒定速度直线向左或向右运动。对撞机的长度足够大,确保粒子在可预见的时间内不会离开对撞机。

请编写程序,计算任意两粒子首次相遇并产生爆炸的时刻。换句话说,求在首次有两粒子重合于同一点前,经过的微秒数。

输入格式

第一行包含正整数 nn1n2000001 \leq n \leq 200000),表示粒子的数量。

第二行包含 nn 个字符,每个字符为 "L" 或 "R"。第 ii 个字符为 "L" 时,第 ii 个粒子向左运动,否则第 ii 个字符为 "R",表示第 ii 个粒子向右运动。

第三行包含一组互不相同的偶数整数 x1,x2,...,xnx_{1},x_{2},...,x_{n}0xi1090 \leq x_{i} \leq 10^{9}),表示这些粒子的坐标,且以从左到右递增的顺序给出。

输出格式

输出一行一个整数,表示首次有两粒子碰撞并爆炸所经历的微秒数。

如果永远没有两粒子发生碰撞,请输出 1-1

说明/提示

在第一个样例中,第一次碰撞会在 11 微秒后发生,因为第 11 个和第 22 个粒子会同时位于坐标 33 的位置。

在第二个样例中,不会有任何粒子碰撞,因此不会发生爆炸。

由 ChatGPT 5 翻译

样例

4
RLRL
2 4 6 10
1
3
LLR
40 50 60
-1

在线编程 IDE

建议全屏模式获得最佳体验