#SLT09D. 2026年S组模拟赛10连测第9场-T4 程老师的展板分割

2026年S组模拟赛10连测第9场-T4 程老师的展板分割

项目 内容
输入文件名 boards.in
输出文件名 boards.out
可执行文件名 boards
每个测试点时限 1.0 秒
内存限制 512 MiB
测试点数目 20
是否等分 是

结果比较方式为全文比较(过滤行末空格及文末换行)。

题目描述

展厅里沿一条直线依次排开 nn 块展板,从东到西编号 11 到 nn。第 ii 块展板的布展工作量记为 aia_i。一块展板的布展工作不能拆开分给两个施工队,它只能整体归入某一个施工队的作业范围。

程老师要把这批展板按顺序分成恰好 kk 段:每一段由编号连续的一段展板组成,kk 段依次相接,不重不漏地盖住第 11 块到第 nn 块。此外每段的长度有硬性限制——一段里的展板至少 LL 块、至多 RR 块。

每一段交给一个施工队独立完成,队伍之间互不调配。一个施工队的工期,在数值上就等于该段内各块展板的工作量之和。整场布展的总工期以最慢的那一段计,也就是各段工作量之和中的最大值。

为压缩总工期,程老师需要选择一种满足上述长度要求的分段方式。请计算:在所有合法分段方式中,总工期最小可能是多少。

输入格式

从文件 boards.in 中读入数据。

  • 第一行四个整数 n,k,L,Rn, k, L, R;
  • 第二行 nn 个整数 a1,a2,…,ana_1, a_2, \dots, a_n。

输出格式

输出到文件 boards.out 中。

输出一行一个整数,表示总工期的最小可能值。

样例

6 2 2 3
1 2 1 3 1 2
6

样例 1 解释

一共 66 块展板要切成恰好 22 段,每段长度只能是 22 或 33,而两段长度相加必须正好等于 66,因此两段只能各长 33。切点随之唯一:只有切在第 33 块之后,前一段 [1,2,1][1,2,1] 长 33、后一段 [3,1,2][3,1,2] 长 33;切在别的位置,总会有一段长度超出上限或不足下限。这两段的工作量之和分别为 44 与 66,总工期取其中较大者,为 66。

4 1 4 4
1 2 3 4
10

样例 2 解释

只切成 11 段,全部 44 块展板属于同一段,该段工作量之和为 1+2+3+4=101+2+3+4=10,总工期为 1010。

数据范围

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

  • 1≤k≤501 \le k \le 50,1≤L≤R≤n≤1051 \le L \le R \le n \le 10^5;
  • k⋅L≤n≤k⋅Rk \cdot L \le n \le k \cdot R;
  • 1≤ai≤1061 \le a_i \le 10^6。

各测试点的约束如下:

测试点 nn kk 特殊性质
1∼21\sim2 ≤10\le 10 ≤3\le 3 无
3∼63\sim6 ≤50\le 50 ≤5\le 5
7∼87\sim8 ≤500\le 500 ≤10\le 10
9∼109\sim10 ≤2000\le 2000 ≤15\le 15
11∼1411\sim14 ≤104\le 10^4 ≤30\le 30
15∼1815\sim18 ≤105\le 10^5 ≤50\le 50
1919 A
2020 B
  • 特殊性质 A:L=RL = R。
  • 特殊性质 B:k=1k = 1。
难度 未评定
通过率 —
尝试 0
通过 0
ID
3804
类型
传统题
Time Limit
1000ms
Memory Limit
512MiB
上传者