C. 加速清空 (clean)

    传统题 文件IO:clean 2000ms 256MiB

加速清空 (clean)

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

处理系统中有 nn 个任务,第 ii 个任务最初还有 aia_i 单位的工作量。

系统以完整的整数秒为单位运行。在每一秒开始时,你可以选择至多一个尚未完成的任务使用加速器。在这一秒结束时:

  • 每个尚未完成的任务都会自动减少 xx 单位工作量;
  • 被加速器选中的任务还会额外减少 yy 单位工作量。

因此,被选中的任务在这一秒内共减少 x+yx+y 单位工作量,其他尚未完成的任务减少 xx 单位工作量。每一秒都可以重新选择要加速的任务,也可以不使用加速器。

当一个任务的剩余工作量小于或等于 00 时,该任务完成,之后不再需要处理。

请计算完成全部任务所需的最少整数秒数。

输入格式

在文件 clean.in 中读入。

第一行输入三个整数 n,x,yn,x,y。

第二行输入 nn 个整数 a1,a2,…,ana_1,a_2,\ldots,a_n,表示各任务最初的工作量。

输出格式

在文件 clean.out 中输出。

输出一行一个整数,表示完成全部任务所需的最少秒数。

样例

样例输入 #1

4 2 3
2 4 7 8

样例输出 #1

3

样例 1 解释

经过 33 秒的自动处理,每个任务都会减少 66 单位工作量。此时第 33、44 个任务还分别需要减少 11 和 22 单位工作量。

可以在这 33 秒中的两秒分别加速第 33、44 个任务,从而在 33 秒内完成全部任务。

如果只运行 22 秒,自动处理后第 33、44 个任务还分别剩余 33 和 44 单位工作量。它们分别至少需要 11 秒和 22 秒加速,共需 33 秒加速器时间,而两秒内加速器最多工作 22 秒,因此无法完成。答案为 33。

大样例

数据范围

对于所有测试数据,保证:

1≤n≤5×1051\le n\le 5\times10^5 1≤x,y≤5×1051\le x,y\le 5\times10^5 1≤ai≤5×1051\le a_i\le 5\times10^5

aia_i 之间不要求互不相同。计算过程中可能出现超出 32 位有符号整数范围的中间结果。

子任务 分值 额外限制
1 20 n≤10n\le 10,且 ai,x,y≤100a_i,x,y\le 100
2 30 n≤5000n\le 5000,且 ai,x,y≤5000a_i,x,y\le 5000
3 50 无额外限制

小云雀杯普及组重现

未参加
状态
已结束
规则
IOI
题目
4
开始于
2026-9-8 16:30
结束于
2026-9-13 16:30
持续时间
120 小时
主持人
参赛人数
28