2023031665 - 接水问题_1

通过次数

0

提交次数

0

时间限制 : 1 秒
内存限制 : 128 MB

算法训练&nbsp 接水问题&nbsp  
时间限制:1.0s&nbsp  &nbsp 内存限制:64.0MB
 &nbsp  &nbsp
问题描述
  学校里有一个水房,水房里一共装有m&nbsp 个龙头可供同学们打开水,每个龙头每秒钟的&nbsp 供水量相等,均为1。&nbsp 现在有n&nbsp 名同学准备接水,他们的初始接水顺序已经确定。将这些同学按接水顺序从1&nbsp 到n&nbsp 编号,i&nbsp 号同学的接水量为wi。接水开始时,1&nbsp 到m&nbsp 号同学各占一个水龙头,并同时打&nbsp 开水龙头接水。当其中某名同学j&nbsp 完成其接水量要求wj&nbsp 后,下一名排队等候接水的同学k&nbsp 马上接替j&nbsp 同学的位置开始接水。这个换人的过程是瞬间完成的,且没有任何水的浪费。即&nbsp j&nbsp 同学第x&nbsp 秒结束时完成接水,则k&nbsp 同学第x+1&nbsp 秒立刻开始接水。若当前接水人数n’不足m,&nbsp 则只有n’个龙头供水,其它m−n’个龙头关闭。&nbsp 现在给出n&nbsp 名同学的接水量,按照上述接水规则,问所有同学都接完水需要多少秒。
输入格式
  第1&nbsp 行2&nbsp 个整数n&nbsp 和m,用一个空格隔开,分别表示接水人数和龙头个数。&nbsp 第2&nbsp 行n&nbsp 个整数w1、w2、……、wn,每两个整数之间用一个空格隔开,wi&nbsp 表示i&nbsp 号同&nbsp 学的接水量。
输出格式
  输出只有一行,1&nbsp 个整数,表示接水所需的总时间。
样例输入
5&nbsp 3
4&nbsp 4&nbsp 1&nbsp 2&nbsp 1
样例输出
4
样例输入
8&nbsp 4
23&nbsp 71&nbsp 87&nbsp 32&nbsp 70&nbsp 93&nbsp 80&nbsp 76
样例输出
163
输入输出样例&nbsp 1&nbsp 说明
  第1&nbsp 秒,3&nbsp 人接水。第1&nbsp 秒结束时,1、2、3&nbsp 号同学每人的已接水量为1,3&nbsp 号同学接完
  水,4&nbsp 号同学接替3&nbsp 号同学开始接水。
  第2&nbsp 秒,3&nbsp 人接水。第2&nbsp 秒结束时,1、2&nbsp 号同学每人的已接水量为2,4&nbsp 号同学的已接
  水量为1。
  第3&nbsp 秒,3&nbsp 人接水。第3&nbsp 秒结束时,1、2&nbsp 号同学每人的已接水量为3,4&nbsp 号同学的已接
  水量为2。4&nbsp 号同学接完水,5&nbsp 号同学接替4&nbsp 号同学开始接水。
  第4&nbsp 秒,3&nbsp 人接水。第4&nbsp 秒结束时,1、2&nbsp 号同学每人的已接水量为4,5&nbsp 号同学的已接
  水量为1。1、2、5&nbsp 号同学接完水,即所有人完成接水。
  总接水时间为4&nbsp 秒。
数据规模和约定
  1&nbsp ≤&nbsp n&nbsp ≤&nbsp 10000,1&nbsp ≤m≤&nbsp 100&nbsp 且m≤&nbsp n;
  1&nbsp ≤&nbsp wi&nbsp ≤&nbsp 100。

输入

输出

样例

输入


                            

输出


                            

提示

请关注微信公众号onlinejudge

来源

算法训练