#B. 探险

    Type: Default 1000ms 128MiB

探险

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目描述

       有n个同学一起去探险,现在把n个同学分成k个小组,每个小组完成一项探险任务。分组时,如果第i人与第j人分在同一组(i<j),则他们之间的所有人(第i+1,i+2,…,j-1个)也必须在同一个小组中。
       一个小组内所有人的体力和越小,途中可能越危险。为了确保每个同学的安全,要求分组时,使得所有小组中,体力和最小的那个小组的所有人的体力和尽量大。
      依次告诉你每个人的体力,如何分组呢?


输入格式

     输入第1行有二个正整数n和k,互相之间以一个空格分隔。
    第2行有n个正整数(互相以一个空格分隔),表示n个人的体力值。其中第j个整数表示第j个人的体力值。


输出格式

     输出只有1行,该行只有一个整数,表示最佳划分方案中,最弱的小组中,所有人的体力值之和。

样例

5 2
5 2 1 6 9
9

提示


【样例说明】
    共有5个人,他们的体力值分别为:5、2、1、6、9。
    (1)分成2个小组时,第1小组由前4个人组成,第2小组由第5个人单独组成,此时最弱小组的体力和为9(其它划分方案时最弱小组的体力和都小于9)。
    (2)分成3个小组时,第1小组由前2个人组成,第2小组由第3、第4两人组成,第3小组由第5个人单独组成,此时最弱小组的体力和为7(其它划分方案时最弱小组的体力和都小于7)。
    (3)分成4个小组时,第1小组由第1个人组成,第2小组由第2、3两人组成,第3小组由第4人组成,第4小组由第5人组成,此时最弱小组的的体力和为3(其它划分方案时最弱小组的体力和都小于3)。
【数据限制】
50%的数据,1≤k≤3;
80%的数据,1≤k≤100, 1≤n≤300;
100%的数据,1≤n≤30000,1≤k≤1000, k≤n,每个人的体力值不大于10000。




零基础(8)——宽度优先搜索

Not Claimed
Status
Done
Problem
4
Open Since
2025-5-10 0:00
Deadline
2025-5-18 23:59
Extension
24 hour(s)