#P2084. 【蚂蚁算法岗】2025-3-27-第一题-缘分字符串

【蚂蚁算法岗】2025-3-27-第一题-缘分字符串

题目描述

对于给定的长度为nn,仅由小写字母组成的字符串s1,s2,,sns_1,s_2,···,s_n。如果有这样的两个不同的位置iijj,满足其上的字符 SiS_iSjS_j在字母表中相差的位置数小于等于gg,那么我们称iijj是“有缘分的”。

你需要求解,对于给定的gg,字符串ss中,有多少对位置是“有缘分的”。

字母表的第11个字母为aa,第2626个字母为zz。两个字符在字母表中的位置差,即为它们在字母表中相隔的字母个数。

例如,aadd之间隔了bbcc两个字母,所以位置差为22

输入描述

第一行输入两个整数n,g(1n103,0g25)n, g (1 \le n\le 10^3, 0\le g\le 25)代表字符串的长度、约束。

第二行输入一个长度为nn,仅由小写字母组成的字符串ss

输出描述

输出一个整数,代表满足条件的“有缘分的”位置对数。

样例1

输入

3 25
aaa

输出

3

样例解释

在这个样例中,一共有三对不同的位置分别是(1,2),(1,3),(2,3)(1,2),(1,3),(2,3),每一对位置上的字符在字母表中相差的位置数都恰为00,所以均满足条件。

样例2

输入

4 1
acbd

输出

5