#lg12928. [POI 2022/2023 R2] 伐木工人 / Drwale

    ID: 3404 传统题 4000ms 256MiB 尝试: 1 已通过: 1 难度: 10 上传者: 标签>动态规划 DP位运算bitset普及+/提高−

[POI 2022/2023 R2] 伐木工人 / Drwale

AdditionalFile5023.zip

#5023. 「POI 2022/2023 R2」Drwale

标签: 传统 | 时间限制: 4000 ms | 内存限制: 256 MiB |

题目描述

题目译自 XXX Olimpiada Informatyczna – II etap Drwale

两位伐木工 Bajtek 和 Bitek 以相同速度砍伐 nn 块木材,初始堆放在一起。第 ii 块木材需耗时 aia_i 分钟。每次某位伐木工完成当前木材后,从堆顶取下一块。若两人同时完成,Bajtek 优先取木材。

你的任务是计算在最不利排列下,伐木工完成所有砍伐的最晚时间。

输入格式

第一行包含一个整数 nn (1≤n≤106)(1 \leq n \leq 10^6),表示木材数量。

第二行包含 nn 个正整数 a1,a2,…,ana_1, a_2, \ldots, a_n,表示每块木材的砍伐时间。

设 A=a1+a2+…+anA = a_1 + a_2 + \ldots + a_n 为总砍伐时间,满足 A≤5000000A \leq 5000000。

输出格式

输出一个整数,表示伐木工完成砍伐的最长可能时间。

样例

输入

3
2 3 1

输出

4

若木材按顺序 1,2,31, 2, 3 排列(耗时 1,2,31, 2, 3),可达结果 44。Bajtek 先取木材 11(耗时 11),Bitek 取木材 22(耗时 22)。11 分钟后,Bajtek 取木材 33(耗时 33)。44 分钟后,所有木材砍伐完成。

附加样例

  1. n=6,ai=in=6, a_i = i,答案为 1313。
  2. n=1000,ai=1n=1000, a_i = 1,答案为 500500。
  3. n=10,ai=2i−1n=10, a_i = 2^{i-1},答案为 767767。
  4. n=2,ai=2500000n=2, a_i = 2500000,答案为 25000002500000。

数据范围与提示

详细子任务附加限制及分值如下表所示。

子任务编号 附加限制 分值
11 n≤10n \leq 10 55
22 A≤500A \leq 500 1515
33 A≤10000A \leq 10000 2020
44 A≤100000A \leq 100000 2020
55 A≤1000000A \leq 1000000 2020
66 无附加限制 2020