n個人一起排隊接水,第i個人需要a[i]的時間來接水。
1 <= n <= 1000
1 <= a[i] <= 1000
同時只能有乙個人接水,正在接水的人和沒有接水的人都需要等待。
完成接水的人會立刻消失,不會繼續等待。
你可以決定所有人接水的順序,並希望最小化所有人等待時間的總和。
input
第一行乙個整數noutput接下來n行,每行乙個整數表示a[i]
一行乙個整數,表示所有人等待時間的總和的最小值input示例
312output示例3
10思路:優先佇列的基礎使用
#include#include#include
#include
#include
#include
using
namespace
std;
intmain()
int sum = 0
;
while (!que.empty())
cout
<< sum
}
51Nod 2133 排隊接水 貪心
題目 n個人一起排隊接水,第i個人需要b i 的時間來接水。1 n 1000,0 b i 1000。同時只能有乙個人接水,正在接水的人和沒有接水的人都需要等待。完成接水的人會立刻消失,不會繼續等待。你可以決定所有人接水的順序,並希望最小化所有人等待時間的總和。輸入 第一行乙個整數n,接下來n行,每行...
1223排隊接水
難度 普及 題目型別 貪心 提交次數 1 涉及知識 貪心,排序 有n個人在乙個水龍頭前排隊接水,假如每個人接水的時間為ti,請程式設計找出這n個人排隊的一種順序,使得n個人的平均等待時間最小。輸入格式 輸入檔案共兩行,第一行為n 第二行分別表示第1個人到第n個人每人的接水時間t1,t2,tn,每個資...
(貪心1)排隊接水
問題描述 有n個人排隊到r個水龍頭去打水,他們裝滿水桶的時間t1 t2 tn為整數且各不相等,應如何安排他們的打水順序才能使他們總共花費的時間最少?輸入格式 第一行n,r n 500,r 75 第二行為n個人打水所用的時間ti ti 100 輸出格式 最少的花費時間 樣例輸入 3 2 1 2 3 樣...