luogu#P16818. [蓝桥杯 2026 国 Python B] 仓库管理

[蓝桥杯 2026 国 Python B] 仓库管理

题目描述

小蓝是某大型物流中心的仓储管理员。今天,系统下达了一项紧急任务:需要将 NN 个标准集装箱全部入库,并分配到 MM 个货架上。

货架从左到右编号为 1,2,,M1, 2, \dots, M。由于自动化机械臂将集装箱运送到不同货架的距离不同,将 11 个集装箱放入第 ii 个货架需要消耗 ii 单位电力。

公司要求本次入库任务的总耗电量必须在闭区间 [L,R][L, R] 内。同时,为了避免单个货架承重过高,小蓝希望让放置集装箱数量最多的货架尽可能少放一些集装箱。

形式化地说,你需要构造一个非负整数序列 a1,a2,,aMa_1, a_2, \dots, a_M,其中 aia_i 表示第 ii 个货架放置的集装箱数量。该序列需要满足:

  • 所有集装箱都被分配到货架上,即 i=1Mai=N\sum_{i=1}^{M} a_i = N
  • 总耗电量满足 Li=1Mi×aiRL \le \sum_{i=1}^{M} i \times a_i \le R

在所有满足条件的分配方案中,请求出 max(a1,a2,,aM)\max(a_1, a_2, \dots, a_M) 的最小可能值。如果不存在满足条件的分配方案,输出 1-1

输入格式

输入共一行,包含四个整数 N,M,L,RN, M, L, R,分别表示集装箱数量、货架数量、总耗电量下界和总耗电量的上界。

输出格式

输出一行,包含一个整数,表示 max(ai)\max(a_i) 的最小可能值。

如果不存在满足条件的分配方案,输出 1-1

5 3 13 14
3

提示

【样例说明】

下面两种方案都满足总耗电量限制:

  • a1=0,a2=2,a3=3a_1 = 0, a_2 = 2, a_3 = 3,总耗电量为 0×1+2×2+3×3=130 \times 1 + 2 \times 2 + 3 \times 3 = 13,此时 max(ai)=3\max(a_i) = 3
  • a1=0,a2=1,a3=4a_1 = 0, a_2 = 1, a_3 = 4,总耗电量为 0×1+1×2+4×3=140 \times 1 + 1 \times 2 + 4 \times 3 = 14,此时 max(ai)=4\max(a_i) = 4

第一种方案的最大货架放置数量更小。可以证明不存在使 max(ai)\max(a_i) 小于 33 的合法方案,因此答案为 33

【评测用例规模与约定】

对于 40%40\% 的数据,保证 N,M40N, M \le 40

对于所有数据,保证 1N,M200001 \le N, M \le 200001LRNM1 \le L \le R \le NM