#NH4522. NH.2016.04.黑白奶牛(cow)

NH.2016.04.黑白奶牛(cow)

题目描述

有 N 只奶牛从左往右排成一行,编号是 1 至 N 。这 N 只奶牛当中,有一些奶牛是黑色的,其余的是白色的。

color[i]表示第 i 只奶牛的颜色,如果 color[i]=0 则表示第 i 头奶牛是黑色的,如果 color[i]=1 则表示第 i 头奶牛是白色的。

六一奶牛儿童节快到了,农场主 Farmer John 要从这 N 头奶牛当中,挑选尽可能多的奶牛去参加晚会。

Farmer John 挑选奶牛的原则是:挑选编号是连续的一段奶牛,这一段奶牛的颜色必须全部是白色的。
Farmer John 有一个魔法棒,每用一次魔法棒就可以把一头黑色的奶牛变成一头白色的奶牛,魔法棒最多只能使用 K 次。

在上述条件下,最多可以有多少头奶牛去参加晚会呢?

输入格式

第一行,两个整数,N 和 K。

第二行,N 个整数,第 i 个整数就是 color[i] , color[i] 要么是 0,要么是 1。

数据规模

对于 50% 的数据,1 <= N <= 1000,K = 0 ,即不能使用魔法棒。

对于 100% 的数据,1 <= N <= 100000, 1 <= K <=N。

输出格式

一个整数,表示最多有多少头奶牛可以去参加晚会。

样例

11 0
1 1 0 0 1 1 1 1 0 1 1
4
11 1
1 1 0 0 1 1 1 1 0 1 1
7

样例解释

  • 样例1:由于 K=0,所以不能使用魔法棒,所以挑选编号是 5 至 8 的奶牛去参加晚会。
  • 样例2:由于 K=1,所以最多可以使用 1 次魔法棒,使用魔法棒把第 9 头奶牛变成白色奶牛,然后挑选编号是 5 至 11 的奶牛去参加晚会。