牛牛的木板
时间限制:C/C++/Rust/Pascal 3秒,其他语言6秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

牛牛从牛毕那里拿了一根长度为n的白木板,木板被等分成了n段(没有被切割,只是虚拟划分成了n段),其中有些段被牛毕用颜料染成了黑色。

牛牛非常不喜欢黑色,它找来了一桶清洗剂决定对木板进行清洗,但是牛牛发现自己的清洗剂最多只能清洗m段。
清洗完后,牛牛会把木板锯成纯色的几段。例如假设木板是 (黑黑黑白白白白黑黑黑 ),就会被锯成(黑黑黑)(白白白白)(黑黑黑)三段。
牛牛想知道,它足够聪明地清洗木板,能获得的纯白色木板的最大长度是多少。



示例1

输入

复制
6,1, [1,0,0,1,1,1]

返回值

复制
4

说明

染成了[1,0,1,1,1,1] 
示例2

输入

复制
6,2, [1,0,0,1,1,1]

返回值

复制
6

说明

染成了[1,1,1,1,1,1] 

备注:

给定n,m两个整数
和一个长度为n的数组a,为1表示白色,为0表示黑色
( ,  )
()