output_description: Print the maximum possible number of consecutive people standing on hands
  after at most K directions.
  
  * * *
input_description: Input is given from Standard Input in the following format:
  
      
      
      N K
      S
attempt: # AtCoder Beginner Contest 124
  # https://atcoder.jp/contests/abc124
  import sys
  
  s2nn = lambda s: [int(c) for c in s.split(" ")]
  ss2nn = lambda ss: [int(s) for s in list(ss)]
  ss2nnn = lambda ss: [s2nn(s) for s in list(ss)]
  i2s = lambda: sys.stdin.readline().rstrip()
  i2n = lambda: int(i2s())
  i2nn = lambda: s2nn(i2s())
  ii2ss = lambda n: [sys.stdin.readline() for _ in range(n)]
  ii2nnn = lambda n: ss2nnn(ii2ss(n))
  
  
  def grouping(N, S):
      group = []
      s = S[0]
      c = 1
      for i in range(1, N):
          if S[i] == s:
              c += 1
          else:
              group.append((s, c))
              s = S[i]
              c = 1
      group.append((s, c))
      return group
  
  
  def main(N, K, S):
      g = grouping(N, S)
      glen = len(g)
      # 累積和(cumsum)
      cs = [0] * (glen + 1)
      for i in range(glen):
          cs[i + 1] = cs[i] + g[i][1]
      nm = 0
      for i in range(glen):
          if g[i][0] == "0":
              n = cs[min(i + 2 * K, glen)] - cs[i]
          else:
              n = cs[min(i + 2 * K + 1, glen)] - cs[i]
          if n > nm:
              nm = n
      print(nm)
  
  
  N, K = i2nn()
  S = i2s()
  main(N, K, S)
  
problem_description: Statement
  
  N people are arranged in a row from left to right.
  
  You are given a string S of length N consisting of `0` and `1`, and a positive
  integer K.
  
  The i-th person from the left is standing on feet if the i-th character of S
  is `0`, and standing on hands if that character is `1`.
  
  You will give the following direction at most K times (possibly zero):
  
  **Direction** : Choose integers l and r satisfying 1 \leq l \leq r \leq N, and
  flip the l-th, (l+1)-th, ..., and r-th persons. That is, for each i = l, l+1,
  ..., r, the i-th person from the left now stands on hands if he/she was
  standing on feet, and stands on feet if he/she was standing on hands.
  
  Find the maximum possible number of **consecutive** people standing on hands
  after at most K directions.
samples: [{"input": "5 1\n    00010", "output": "4\n    \n\nWe can have four consecutive people standing on hands, which is the maximum\nresult, by giving the following direction:\n\n  * Give the direction with l = 1, r = 3, which flips the first, second and third persons from the left.\n\n* * *"}, {"input": "14 2\n    11101010110011", "output": "8\n    \n\n* * *"}, {"input": "1 1\n    1", "output": "1\n    \n\nNo directions are necessary."}]