A59008.午枫的又一个01串

普及/提高-

官方

通过率:0%

时间限制:1.00s

内存限制:128MB

题目描述

小枫有一个长度为 nn0101ss ,这个 0101 串从左往右的第 ii 个数为 sis_i ,小午可以对这个 0101 串做最多 mm 次操作:

  • 选择一段区间 [l,r][l,r] 满足 1l<rn,sl=0,sr=11 \leq l < r \leq n, s_l=0,s_r=1
  • 对于这段区间的每一位 si(lir)s_i(l\leq i \leq r) ,将其变为 si1s_i \oplus 1 ,其中 \oplus 表示按位异或。

定义一个 0101 串的度为相邻两位不同的个数。形式化的,对于 1in11\leq i\leq n-1 ,满足 sisi+1s_i\neq s_{i+1} 的个数为 0101 串的度。

小枫想知道小午通过操作最多 mm 次后,在所有能得到的字符串中最小的度为多少。

输入格式

第一行输入两个整数 n,mn,m (1n,m106)(1\leq n,m\leq 10^6) ,分别表示 0101 串的长度以及最多操作次数。

第二行输入一个长度为 nn0101ss ,表示初始的 0101 串。

输出格式

输出一个整数,表示在所有能得到的字符串中,最小的度。

输入输出样例

  • 输入#1

    8 1
    10111001

    输出#1

    2

说明/提示

样例解释

选择区间 [2,5][2,5] ,原串变为 11000001 ,此串的度为 22 。没有方法可以得到度更少的 0101 串。

首页