早教吧 育儿知识 作业答案 考试题库 百科 知识分享

接水问题代码求注释学校里有一个水房,水房里一共装有m个龙头可供同学们打开水,每个龙头每秒钟的供水量相等,均为1.现在有n名同学准备接水,他们的初始接水顺序已经确定.将这些同

题目详情
接水问题代码求注释
  学校里有一个水房,水房里一共装有m 个龙头可供同学们打开水,每个龙头每秒钟的 供水量相等,均为1.现在有n 名同学准备接水,他们的初始接水顺序已经确定.将这些同学按接水顺序从1 到n 编号,i 号同学的接水量为wi.接水开始时,1 到m 号同学各占一个水龙头,并同时打开水龙头接水.当其中某名同学j 完成其接水量要求wj 后,下一名排队等候接水的同学k 马上接替j 同学的位置开始接水.这个换人的过程是瞬间完成的,且没有任何水的浪费.即j 同学第x 秒结束时完成接水,则k 同学第x+1 秒立刻开始接水.若当前接水人数n’不足m,则只有n’个龙头供水,其它m−n’个龙头关闭.现在给出n 名同学的接水量,按照上述接水规则,问所有同学都接完水需要多少秒.
输入格式
  第1 行2 个整数n 和m,用一个空格隔开,分别表示接水人数和龙头个数.第2 行n 个整数w1、w2、……、wn,每两个整数之间用一个空格隔开,wi 表示i 号同 学的接水量.
输出格式
  输出只有一行,1 个整数,表示接水所需的总时间.
样例输入
5 3
4 4 1 2 1
样例输出
4
样例输入
8 4
23 71 87 32 70 93 80 76
样例输出
163
输入输出样例 1 说明
  第1 秒,3 人接水.第1 秒结束时,1、2、3 号同学每人的已接水量为1,3 号同学接完
  水,4 号同学接替3 号同学开始接水.
  第2 秒,3 人接水.第2 秒结束时,1、2 号同学每人的已接水量为2,4 号同学的已接
  水量为1.
  第3 秒,3 人接水.第3 秒结束时,1、2 号同学每人的已接水量为3,4 号同学的已接
  水量为2.4 号同学接完水,5 号同学接替4 号同学开始接水.
  第4 秒,3 人接水.第4 秒结束时,1、2 号同学每人的已接水量为4,5 号同学的已接
  水量为1.1、2、5 号同学接完水,即所有人完成接水.
  总接水时间为4 秒.
源代码:
#include
#include
int min(inta[],int n)
{
int i;
int min=10000000;
int h;
for(i=0;i
▼优质解答
答案和解析
整个程序的中心思想就是:计算所有水龙头放水时间最长的那个,即是所接水的总时间.
min函数就是在接水过程中,算出接水时间最短的那个水龙头,也就是在接水过程中,确定哪个水龙头下的人,先接完水.
for(i=0;i
看了 接水问题代码求注释学校里有一...的网友还看了以下:

五个人接水,水接满分别要用5、3、4、8、10分钟,只有两个水龙头,如何安排,使打水、等候时间和最  2020-04-11 …

三人同时拿1个水桶接水小禾、小远、小平三人同时各拿1个水桶去接水,三个人的桶注满水所需的时间分别是  2020-05-13 …

4个人同时去开水房接水,只有一个水龙头。小张接水需20秒,小李接水需要10秒,小王接水需5秒,小赵  2020-05-13 …

抽水与放水问题有一蓄水池,每小时40立方米水注入池中,5台抽水机6小时抽完一池水,8台抽水机3小时  2020-06-30 …

混水阀冷水和热水器进水管是接在同一根自来水管上的吗?那么混水阀打开的话,自来水会不会直接从混水阀冷  2020-07-11 …

恒温混水阀和水管接头的冷水热水接反了怎么办?我们自己装的水管,当时也没想到这个问题,以为冷热水管么  2020-07-11 …

观察水龙头,在水龙头出水口出水的流量(在单位时间内通过任一横截面的水的体积)稳定时,发现自来水水流  2020-07-20 …

圆柱形水箱高为5米,容积为50立方米,水箱底部接水管A,顶部接水管B,开始水箱无水,若仅使用A管和  2020-07-21 …

自来水管接电线会不会电死人?我小时候被自来水管电过,心有余悸.我突然有很坏的猜想,假如有人故意把电  2020-07-24 …

1.自来水公司水费计算如下不超过5方水,每方水收费1.7元;超过5方水,1.自来水公司水费计算如下不  2020-11-14 …