题目描述
BSNY在玩一个游戏,游戏角色从起点跑到终点总共经过n个宝箱,编号1到n,宝箱内有不同数量的金币,每个金币得1分。游戏中,部分宝箱有怪兽把守,会将游戏角色催眠,导致角色获取不到对应宝箱的得分。
现在BSNY有一个清醒道具,能免疫催眠,持续连续经过k个宝箱的时间。这个道具只能用一次,BSNY想知道,如何使用,能获取最大得分。
例如n=6, k=3
6个宝箱内金币数量分别为:1 3 5 2 5 4
宝箱附近怪兽的情况分别为:1 1 0 1 0 0
(1表示没怪兽,可以直接获取金币,0表示有怪兽,不免疫催眠的话,获取不到金币)
BSNY可以选择在第3个宝箱时使用道具,那么经过3, 4, 5宝箱时,无论有没有怪兽,都不会被催眠。他可以获得1到5宝箱的金币,得到分数为16。
输入
第一行输入n, k
第二行输入n个整数ai,表示每个宝藏金币数量
第三行输入n个整数ti,ti的值只有0或1
输出
输出最大得分
样例输入
6 3
1 3 5 2 5 4
1 1 0 1 0 0
样例输出
16
提示
1<=k<=n<=100000 1<=ai<=10000
用前缀和!