日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

codevs1127 接水问题

發(fā)布時(shí)間:2024/4/17 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 codevs1127 接水问题 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
題目描述?Description

學(xué)校里有一個(gè)水房,水房里一共裝有m 個(gè)龍頭可供同學(xué)們打開水,每個(gè)龍頭每秒鐘的供水量相等,均為1。


現(xiàn)在有n 名同學(xué)準(zhǔn)備接水,他們的初始接水順序已經(jīng)確定。將這些同學(xué)按接水順序從1到n 編號(hào),i 號(hào)同學(xué)的接水量為wi。接水開始時(shí),1 到m 號(hào)同學(xué)各占一個(gè)水龍頭,并同時(shí)打開水龍頭接水。當(dāng)其中某名同學(xué)j 完成其接水量要求wj 后,下一名排隊(duì)等候接水的同學(xué)k馬上接替j 同學(xué)的位置開始接水。這個(gè)換人的過(guò)程是瞬間完成的,且沒(méi)有任何水的浪費(fèi)。即j 同學(xué)第x 秒結(jié)束時(shí)完成接水,則k 同學(xué)第x+1 秒立刻開始接水。若當(dāng)前接水人數(shù)n’不足m,則只有n’個(gè)龍頭供水,其它m?n’個(gè)龍頭關(guān)閉。


現(xiàn)在給出n 名同學(xué)的接水量,按照上述接水規(guī)則,問(wèn)所有同學(xué)都接完水需要多少秒。

輸入描述?Input Description

第1 行2 個(gè)整數(shù)n 和m,用一個(gè)空格隔開,分別表示接水人數(shù)和龍頭個(gè)數(shù)。
第2 行n 個(gè)整數(shù)w1、w2、……、wn,每?jī)蓚€(gè)整數(shù)之間用一個(gè)空格隔開,wi 表示i 號(hào)同
學(xué)的接水量。

輸出描述?Output Description

輸出只有一行,1 個(gè)整數(shù),表示接水所需的總時(shí)間。

樣例輸入?Sample Input

5 3
4 4 1 2 1

樣例輸出?Sample Output

4

數(shù)據(jù)范圍及提示?Data Size & Hint

n<=10000, m<=100

第1 秒,3 人接水。第1 秒結(jié)束時(shí),1、2、3 號(hào)同學(xué)每人的已接水量為1,3 號(hào)同學(xué)接完水,4 號(hào)同學(xué)接替3 號(hào)同學(xué)開始接水。
第2 秒,3 人接水。第2 秒結(jié)束時(shí),1、2 號(hào)同學(xué)每人的已接水量為2,4 號(hào)同學(xué)的已接水量為1。
第3 秒,3 人接水。第3 秒結(jié)束時(shí),1、2 號(hào)同學(xué)每人的已接水量為3,4 號(hào)同學(xué)的已接水量為2。4 號(hào)同學(xué)接完水,5 號(hào)同學(xué)接替4 號(hào)同學(xué)開始接水。
第4 秒,3 人接水。第4 秒結(jié)束時(shí),1、2 號(hào)同學(xué)每人的已接水量為4,5 號(hào)同學(xué)的已接水量為1。1、2、5 號(hào)同學(xué)接完水,即所有人完成接水。
總接水時(shí)間為4 秒。

思路: 每來(lái)一個(gè)人,就把這個(gè)人拼接到剩余時(shí)間最少的隊(duì)伍上,然后取剩余時(shí)間最多的隊(duì)伍為答案 代碼: #include<iostream> #include<cstdio> #include<algorithm>const int maxm = 101; using namespace std; int main(){int n = 0,m = 0,rap[maxm],i = 0,r = 0,j = 0,k = 0,l = 0,time = 0,base = 0;scanf("%d",&n);scanf("%d",&m);for(i = 0;i < m;i++) scanf("%d",&rap[i]);sort(rap,rap + m);while((k < n - m) && (scanf("%d",&r) == 1)){rap[0] += r;sort(rap,rap + m);}cout<<rap[m - 1]<<endl;return 0; }

?

轉(zhuǎn)載于:https://www.cnblogs.com/hyfer/p/5812519.html

總結(jié)

以上是生活随笔為你收集整理的codevs1127 接水问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。