有n個人排隊到r個水龍頭去打水,他們裝滿水桶的時間為t1,t2,。。。。,tn為整數且各不相等,應如何安排他們的打水順序才能使他們花費的時間最少?
【輸入樣例】
4 2 //4個人打水,2個水龍頭
2 6 4 5 //每個人的打水時間
【輸出樣例】
23 //總共花費時間
【演算法分析】
由於排隊時,越靠前面的計算次數越多,因此越小的排在越前面得出的結果越小,所以這道題可以用貪心演算法解答,基本步驟為:
(1)將輸入的時間從小到大排序;
(2)將排序後的時間順序依次放入每個水龍頭的佇列中;
(3)統計,輸出結果。
**如下:
`
#include#include#includeusing namespace std;
int main()
cout
}`
排隊打水問題
時間限制 1 sec 記憶體限制 256 mb 提交 1 解決 1 提交 狀態 討論版 有n個人排隊到r個水龍頭去打水,他們裝滿水桶的時間t1 t2 tn為整數且各不相等,應如何安排他們的打水順序才能使他們總共花費的時間最少?第一行n,r n 500,r 75 第二行為n個人打水所用的時間ti ti...
排隊打水問題
排隊打水問題 normal time limit 1000ms memory limit 65536k total submit 1262 accepted 450 description 有n個人排隊到r個水龍頭去打水,他們裝滿水桶的時間t1 t2 tn為整數且各不相等,應如何安排他們的打水順序才...
排隊打水問題
排隊打水問題 time limit 1000ms memory limit 65536k description 有n個人排隊到r個水龍頭去打水,他們裝滿水桶的時間t1 t2 tn為 整數且各不相等,應如何安排他們的打水順序才能使他們總共花費的時間最少?input 第一行n,r n 500,r 75...