CF1105B.Zuhair and Strings

普及-

通过率:0%

时间限制:1.00s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Given a string ss of length nn and integer kk (1≤k≤n1 \le k \le n). The string ss has a level xx, if xx is largest non-negative integer, such that it's possible to find in ss:

  • xx non-intersecting (non-overlapping) substrings of length kk,
  • all characters of these xx substrings are the same (i.e. each substring contains only one distinct character and this character is the same for all the substrings).

A substring is a sequence of consecutive (adjacent) characters, it is defined by two integers ii and jj (1≤i≤j≤n1 \le i \le j \le n), denoted as s[i…j]s[i \dots j] = "sisi+1…sjs_{i}s_{i+1} \dots s_{j}".

For example, if k=2k = 2, then:

  • the string "aabb" has level 11 (you can select substring "aa"),
  • the strings "zzzz" and "zzbzz" has level 22 (you can select two non-intersecting substrings "zz" in each of them),
  • the strings "abed" and "aca" have level 00 (you can't find at least one substring of the length k=2k=2 containing the only distinct character).

Zuhair gave you the integer kk and the string ss of length nn. You need to find xx, the level of the string ss.

给定一个长度为 nn 的字符串 ss 和一个整数 kk(1≤k≤n1 \le k \le n)。若 xx 是满足以下条件的最大非负整数,则称字符串 ss 的等级为 xx:

  • 在 ss 中可以找到 xx 个互不相交(即互不重叠)的长度为 kk 的子串;
  • 这 xx 个子串中的所有字符均相同(即每个子串仅包含一种字符,且所有子串所含的该字符也完全相同)。

子串是指一串连续(相邻)的字符,由两个整数 ii 和 jj(1≤i≤j≤n1 \le i \le j \le n)定义,记作 $s[i \dots j] = $ "sisi+1…sjs_{i}s_{i+1} \dots s_{j}"。

例如,当 k=2k = 2 时:

  • 字符串 "aabb" 的等级为 11(可选取子串 "aa");
  • 字符串 "zzzz" 和 "zzbzz" 的等级均为 22(在各自字符串中均可选出两个互不相交的子串 "zz");
  • 字符串 "abed" 和 "aca" 的等级均为 00(无法找到至少一个长度为 k=2k=2 且仅含一种字符的子串)。

祖海尔给了你整数 kk 和长度为 nn 的字符串 ss。你需要求出 ss 的等级 xx。

输入格式

The first line contains two integers nn and kk (1≤k≤n≤2⋅1051 \le k \le n \le 2 \cdot 10^5) — the length of the string and the value of kk.

The second line contains the string ss of length nn consisting only of lowercase Latin letters.

第一行包含两个整数 nn 和 kk(1≤k≤n≤2⋅1051 \le k \le n \le 2 \cdot 10^5)—— 字符串的长度和 kk 的值。

第二行包含一个长度为 nn 的字符串 ss,仅由小写拉丁字母组成。

输出格式

Print a single integer xx — the level of the string.

输出一个整数 xx —— 该字符串的等级。

输入输出样例

  • 输入#1

    8 2
    aaacaabb

    输出#1

    2
  • 输入#2

    2 1
    ab

    输出#2

    1
  • 输入#3

    4 2
    abab

    输出#3

    0

说明/提示

In the first example, we can select 22 non-intersecting substrings consisting of letter 'a': "(aa)ac(aa)bb", so the level is 22.

In the second example, we can select either substring "a" or "b" to get the answer 11.

在第一个例子中,我们可以选择 22 个互不相交的、仅由字母 'a' 组成的子串:"(aa)ac(aa)bb",因此等级为 22。

在第二个例子中,我们可以选择子串 "a" 或 "b" 中的任意一个,从而得到答案 11。

输入解题思路,AI测评打分。不知道怎么写?

首页