P7080: 小豫豫做胡辣汤
传统题
1.000s
时间限制
256MB
内存限制
9 提交
2 解决
【题目描述】
【题目描述】
众所周知,胡辣汤是传统的河南早餐餐品。借着旅行的机会,小豫豫决定学习一下胡辣汤的做法。
一份好喝的胡辣汤必然包含丰富的食材。除去制作工艺有趣的面筋,还有黄花菜、木耳等等。出于成本考虑,小豫豫只准备了 n 样食材,且每样食材的数量是有限的,我们用一个长度为 n 的正整数数列 a1,a2,...,an表示小豫豫拥有的每样食材的数量。
食材在入汤前需要处理,现在这 n 样食材中有的被处理好了,有的没有被处理过。
小豫豫有一次机会,可以选择一个长度恰好为 k 的区间 [i,i+k-1],使得 ai~ai+k-1这K样食材全部都被处理好(无论区间内的食材原先是否被处理好)。
小豫豫想知道,在经过此操作后,所有被
处理好的食材的数量最大是多少。
【
输入格式】
第一行包含两个整数 n 和 k。
第二行包含 n 个整数 ai。
第三行包含一个长度为 n 的 01 序列。
如果第 i 个数为 1,表示第 i 样食材已经被处理好,如果第 i 个数为 0,表示第 i 样食材没有被处理好。
【
输出格式】
一行一个整数,表示答案。
【
输入样例1】
3 1
2 5 4
0 0 1
【
输出样例1】
9
【
样例解释1】
可以选择将第 2 样食材处理,总的处理好的食材数量为 5+4=9
【
输入样例2】
4 3
10 5 4 7
0 1 1 0
【
输出样例2】
19
【
样例解释2】
可以选择将第 [1,3]区间的食材处理,总的处理好的食材数量为 10+5+4=19
【
数据范围】
对于前 50%的数据,满足 1≤
k≤
n≤
100
对于前 70%的数据,满足 1≤
k≤
n≤
1000
对于另外的 10%的数据,满足k=n
对于 100% 的数据,满足1≤
k≤
n≤
100000,
1≤
ai≤
100000