#4736. [USACO10FEB] Chocolate Eating S

    ID: 4736 传统题 1000ms 256MiB 尝试: 0 已通过: 0 难度: (无) 上传者: 标签>来源USACO时间2010基础算法二分贪心难度普及/提高-

[USACO10FEB] Chocolate Eating S

题目描述

Bessie 从公牛们那里收到了 NN1N5×1041 \leq N \leq 5\times10^4)块巧克力,但她不想吃得太快,所以她计划在接下来的 DD1D5×1041 \leq D \leq 5\times10^4)天内安排吃巧克力的日程,以使这些天中她每天的最低幸福值尽可能高。

Bessie 的幸福值是一个整数,初始为 00,每晚睡觉时会减半(如果有小数则向下取整)。然而,当她吃掉第 ii 块巧克力时,幸福值会增加整数 HiH_i1Hi1×1061 \leq H_i \leq 1\times10^6)。如果她在某天吃巧克力,那么当天的幸福值以吃完巧克力后的值为准。Bessie 坚持要按照收到巧克力的顺序来吃。

如果有多个最优解,输出任意一个即可。

考虑一个要在 55 天内吃完 55 块巧克力的例子,它们分别带来的幸福值为 (10,40,13,22,7)(10, 40, 13, 22, 7)

如果 Bessie 在第一天吃掉第一块巧克力(1010 幸福值),然后等待之后再吃其他巧克力,她第一天的幸福值就是 1010

以下是一个最大化最低幸福值的完整安排:

11 天:起床时幸福值 00 → 吃掉 10+4010+40 → 睡前幸福值 5050

22 天:起床时幸福值 2525 → 不吃 → 睡前幸福值 2525

33 天:起床时幸福值 1212 → 吃掉 1313 → 睡前幸福值 2525

44 天:起床时幸福值 1212 → 吃掉 2222 → 睡前幸福值 3434

55 天:起床时幸福值 1717 → 吃掉 77 → 睡前幸福值 2424

这样得到的最低睡前幸福值是 2424,这是 Bessie 能做到的最好结果。

输入格式

  • 11 行:两个用空格分隔的整数:NNDD
  • 2N+12\sim N+1 行:第 i+1i+1 行包含一个整数:HiH_i

输出格式

  • 11 行:一个整数,表示 Bessie 在接下来 DD 天中能达到的最高最低幸福值。
  • 2N+12\sim N+1 行:第 i+1i+1 行包含一个整数,表示 Bessie 吃掉第 ii 块巧克力的日期。

输入输出样例 #1

输入 #1

5 5 
10 
40 
13 
22 
7

输出 #1

24 
1 
1 
3 
4 
5

说明/提示

翻译由 DeepSeek 辅助完成。

Assisted translation by DeepSeek.