#P13735. [JOIGST 2025] 魔法阵 / Magic Circle

    ID: 15548 远端评测题 2000ms 1024MiB 尝试: 0 已通过: 0 显示难度普及− 上传者: 标签>2025O2优化分类讨论JOISC/JOIST(日本)

[JOIGST 2025] 魔法阵 / Magic Circle

题目描述

比太郎所在的魔法学校即将举办运动会。运动会中有一个项目,称为“魔法阵”。

有 NN 个魔法阵依次排列在一个圆上,顺时针编号为 11 到 NN。每个魔法阵为红色或蓝色中的一种,使用长度为 NN 且仅包含小写字母 b 和 r 字符串 SS 表示:Sj(1≤j≤N)S_j(1\le j\le N) 为 r 则表示魔法阵 jj 为红色,否则为蓝色。

比太郎可以通过如下的两种方式在魔法阵中传送:

  • 选择一个相邻的魔法阵,花费 11 秒传送过去。换句话说,可以在魔法阵 j(1≤j≤N−1)j(1\le j\le N-1) 和 j+1j+1 间传送(两个方向均可),也可以在魔法阵 11 和 NN 间传送(两个方向均可);
  • 选择一个与当前所在魔法阵颜色相同的魔法阵(不一定要相邻),花费 11 秒传送过去。

目前他仅得知每个魔法阵的颜色,但并不知道运动会当天具体的传送计划。于是他决定考虑 QQ 个传送计划:在第 ii 个计划中,他要从魔法阵 XiX_i 开始,花费最少的时间传送到魔法阵 YiY_i。

请你对于每一个传送计划,求出最少需要花费的时间。

输入格式

第一行输入两个整数 N,QN,Q。

第二行输入一个字符串 SS。

接下来 QQ 行,每行输入两个整数 Xi,YiX_i,Y_i。

输出格式

输出 QQ 行,在第 ii 行输出一个整数,表示第 ii 个传送计划最少需要花费的传送时间(单位:秒)。

5 2
rbrbb
5 3
4 5
2
1
4 3
brrr
2 4
1 3
3 1
1
2
2
6 3
brbrbr
1 2
2 5
2 4
1
2
1
6 5
bbbrrr
2 3
2 4
2 5
2 6
2 1
1
2
3
2
1

提示

【样例解释 #1】

在此样例中,魔法阵的颜色分别为红色、蓝色、红色、蓝色、蓝色。

对于第一组计划(5→35\to 3),比太郎可以使用如下传送方案:

  1. 从魔法阵 55 传送到相邻的魔法阵 11,花费 11 秒;
  2. 从魔法阵 11 传送到颜色相同的魔法阵 33,花费 11 秒。

最少需要花费的时间为 22 秒。可以证明不可能在小于 22 秒的时间内从魔法阵 55 传送到魔法阵 33。

对于第二组计划(4→54\to 5),比太郎可以使用如下传送方案:

  1. 从魔法阵 44 传送到颜色相同的魔法阵 55,花费 11 秒。

最少需要花费的时间为 11 秒。

该样例满足子任务 5,65,6 的限制。

【样例解释 #2】

该样例满足子任务 2,5,62,5,6 的限制。

【样例解释 #3】

该样例满足子任务 3,5,63,5,6 的限制。

【样例解释 #4】

该样例满足子任务 4,5,64,5,6 的限制。

【数据范围】

  • 3≤N≤5×1053\le N\le 5\times 10^5;
  • 1≤Q≤5×1051\le Q\le 5\times 10^5;
  • SS 为仅包含小写字母 b 和 r 的长度为 NN 的字符串;
  • 1≤Xi,Yi≤N(1≤i≤Q)1\le X_i,Y_i\le N(1\le i\le Q);
  • Xi≠Yi(1≤i≤Q)X_i\ne Y_i(1\le i\le Q)。

【子任务】

  1. (66 分)N=3N=3,Q≤100Q\le 100;
  2. (1313 分)S1S_1 为 b,SS 的其他字符均为 r;
  3. (1818 分)NN 为偶数,SS 奇数位置的字符为 b,偶数位置的字符为 r;
  4. (2323 分)NN 为偶数,SS 的前 N2\frac{N}{2} 个字符为 b,后 N2\frac{N}{2} 个字符为 r;
  5. (2121 分)N,Q≤100N,Q\le 100;
  6. (1919 分)无附加限制。