33OJ
登录 注册

#LX0066. 洗衣店

洗衣店

题目描述 1s 512MB

一家洗衣店收到衣服后,需要依次完成水洗、烘干、熨烫三道流程。只有完成熨烫的衣服,才算处理完毕。

洗衣店每天最多可以水洗 AA 件衣服、烘干 BB 件衣服、熨烫 CC 件衣服。三道流程可以在同一天处理不同的衣服,但同一件衣服在一天内最多只能进行一道流程。

也就是说,当天水洗的衣服最早只能在第二天烘干,当天烘干的衣服最早只能在第二天熨烫。

从第 11 天开始,连续 nn 天,每天一大早都会送来一批衣服。其中,第 ii 天送来 aia_i 件,这些衣服当天就可以参加水洗。洗衣店开始营业前没有待处理的衣服,第 nn 天之后不再送来新衣服。

每天,每道流程都会在满足条件的待处理衣服中,尽可能多地处理衣服,直到达到当天的处理上限或没有符合条件的衣服。如果待处理的衣服超过当天的处理上限,则优先处理较早送来的衣服;同一天送来的衣服,先后顺序可以任意安排。当天没有使用完的处理能力不能留到以后使用。

洗衣店每天都会营业,直到所有衣服都处理完毕。

请你求出:到第几天结束时,所有送来的衣服都完成了熨烫?

输入格式

第一行输入四个正整数 n,A,B,Cn,A,B,C,分别表示送来衣服的天数,以及每天水洗、烘干、熨烫的处理上限。

第二行输入 nn 个非负整数 a1,a2,…,ana_1,a_2,\ldots,a_n,表示每天一大早送来的衣服件数。

输出格式

输出一个整数,表示所有衣服处理完毕的日期。第一天的日期记为 11。

样例输入 #1

3 2 2 1
3 1 2

样例输出 #1

8

样例解释 #1

每天各道流程处理的衣服数量如下:

日期 当天送来 水洗 烘干 熨烫
11 33 22 00 00
22 11 22
33 22 11
44 00
55 00
66
77
88

一共有 66 件衣服,直到第 88 天结束时才全部完成熨烫。

注意:第 11 天虽然已经水洗了两件衣服,但当天不能继续烘干它们。

样例输入 #2

3 1 3 2
2 0 1

样例输出 #2

5

样例输入 #3

1 5 2 3
5

样例输出 #3

5

另提供 sample 目录中的六组下发样例:data04、data08、data12、data15、data17、data20,依次对应下表中的六档数据范围。题面中的三组小样例不另行下发。

数据范围

本题共 2020 个测试点,每个测试点 55 分,共 100100 分。

记所有送来的衣服总件数为:

S=∑i=1nai。S=\sum_{i=1}^{n}a_i。
测试点编号 n≤n\leq S≤S\leq 特殊性质
1∼41\sim4 100100 /
5∼85\sim8 20002000
9∼129\sim12 10510^5 2×1052\times10^5
13∼1513\sim15 2×1062\times10^6
16∼1716\sim17 / A≥B≥CA\geq B\geq C
18∼2018\sim20 /

表格中的“/”表示没有额外限制。

对于 100%100\% 的数据:

1≤n≤105,1≤A,B,C≤109,1\leq n\leq10^5,\qquad 1\leq A,B,C\leq10^9, 0≤ai≤109,an≥1。0\leq a_i\leq10^9,\qquad a_n\geq1。

附加样例

附加文件

附件包含题面所述的 sample 目录及下发样例,不参与计分。