D:自动驾驶
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

作为人工智能的重要应用领域,自动驾驶有望重塑现有的交通模式。小可可 团队正在研发一种自动驾驶算法模型,模型约定汽车在单位时间内行驶状态只有下列四种:

* 前进,用大写字母 `F` 表示。
* 后退,用大写字母 `B` 表示。
* 左转,用大写字母 `L` 表示。
* 右转,用大写字母 `R` 表示。

算法运行一段时间后,汽车的行驶过程可以描述为一条长度为 n,且仅包含大写字母 `F`、`B`、`L` 和 `R` 的字符串 S。小可可关注的是 S 串中由 k 个连续字符组成的子串,其中有些子串在 S 串中反复出现。现在,小可可请你统计出所有重复出现的长度为 k 的子串数量,这对预测汽车行驶状态的研究有重要意义。

输入描述:

2 行,

第一行输入 2 个正整数 n, k,分别表示字符串 S 的长度和子串的长度。

第二行:长度为 n,由大写字母 `F`、`B`、`L` 和 `R` 组成的字符串 S

输出描述:

1 行一个整数,表示表示字符串 S 中出现次数大于 1 的长度为 k 的子串数量。
示例1

输入

复制
28 10
FFFFFFFFFFFFFFFFFFFFFBBBFFBB

输出

复制
1

说明

字符串 S 中只有子串(长度为 10)`FFFFFFFFFF` 出现了 12 次。
示例2

输入

复制
30 7
FFFFFLLFFFFFLLLLFFFFFBBBFFBBRR

输出

复制
2

说明

字符串 S 中只有子串(长度为 7)`FFFFFLL` 和 `LLFFFFF` 出现了两次。

备注:

对于 40\% 的数据:50 \le n \le 100

对于 70\% 的数据:50 \le n \le 10^3

对于 100\% 的数据:50 \le n \le 10^51 \le k \le 10