#1481. 分拣货物2

分拣货物2

题目描述

流水线上的货物太多了,小明一个人处理起来特别费力,而且很容易漏掉残次品。你决定多添一些人手来保证货物的质量。

流水线上共有 nn 件货物,以 11 件货物/秒的速度运行。每件货物的状态由一个长度为 nn 的数组 aa 给出:

ai=0a_i = 0 表示第 ii 件货物没有问题

ai=1a_i = 1 表示第 ii 件货物是残次品,需要处理

你需要安排若干人在流水线的不同位置,所有人的位置不会变化。对于每个人来说,面前的货物是残次品时,他会立刻将其拿下(不消耗时间),并花费 tt 秒处理。 在处理期间,流水线仍然继续运行,该人无法检查新的货物。货物一旦被取下,该位置就变为空位,后续如果有人遇到空位,则无需进行任何操作。

保证每个人都会随着流水线的运行把所有货物都检查一遍。

请问,为了确保所有残次品都被处理,最少需要多少人?

输入格式

第一行包含两个整数 n,tn, t (1n105,1tn)(1 \le n \le 10^5, 1 \le t \le n) —— 货物总数,以及处理每件残次品所需的时间(秒)。

第二行包含 nn 个整数 a1,a2,,ana_1, a_2, \dots, a_n,每个 aia_i0011,表示第 ii 件货物的状态。

输出格式

一个整数,表示最少需要的人数,使所有残次品都被处理。

样例

5 2
0 1 0 0 1
1
7 3
1 1 1 0 0 1 1
3