#2089. 「2022 远光杯」再挑战转生瞬间移动

「2022 远光杯」再挑战转生瞬间移动

题目描述

若若又在机厅打舞萌 DX 了!

今天她打的歌曲是妄想感傷代償連盟。哼着再挑战 转生 瞬间移动的歌词,她想到了这样一道题:

你有一个长度为 nn 的仅包含大、小写英文字母的字符串 SS,其中第 ii (1in1 \leq i \leq n) 个字符为 SiS_i

如果 SiS_iSjS_j (1i<jn1 \leq i < j \leq n) 满足它们都是大写字母或小写字母,或者它们是同一个字母大小写不同的表示,则你可以在 SiS_iSjS_j 之间进行传送,每次传送需要 11 秒钟。

此外,你也可以在相邻两个字符之间移动,即从 SiS_i (1in1 \leq i \leq n) 移动到 SjS_j (1jn1 \leq j \leq n, ij=1\left| i - j \right| = 1),每次移动也需要 11 秒钟。

假设你现在的位置在 SxS_x 处,你至少需要多久才能到达 SyS_y 呢?

输入格式

第一行两个正整数 nn (2n1052 \leq n \leq 10^5) 和 qq (1n1051 \leq n \leq 10^5),用一个空格隔开,表示字符串 SS 的长度为 nn,有 qq 次询问。

第二行一个长度为 nn 的字符串 SS,仅包含大、小写英文字母。

之后 qq 行,每行两个正整数 xx (1xn1 \leq x \leq n) 和 yy (1yn1 \leq y \leq n, xyx \neq y),表示询问从 SxS_x 移动到 SyS_y 至少需要多久。

输出格式

对于每次询问,输出一行一个正整数 tt,表示从 SxS_x 移动到 SyS_y 至少需要 tt 秒钟。

样例

样例输入 1

5 1
WOruo
5 1

样例输出 1

2

样例输入 2

7 1
BaiYang
2 5

样例输出 2

1