這個題是標準的貪心題目,只要保證按照耗費時間從小往大排列就可保證整個序列等待時間最短。
但是還是有一些問題需要注意:
1)第乙個最後的結果如果用float會溢位,爆掉五個點。
2)二維陣列的sort排序
#include
#include
using
namespace std;
int*
*a =
newint*[
1002];
bool
compare
(int a,
int b)
double wait =0;
intmain()
sort
(a, a+n, compare)
;for
(int i=
0; icout
("%.2f"
, wait/n)
;return0;
}
P1223 排隊接水
題目描述 有n個人在乙個水龍頭前排隊接水,假如每個人接水的時間為ti,請程式設計找出這n個人排隊的一種順序,使得n個人的平均等待時間最小。輸入輸出格式 輸入格式 輸入檔案共兩行,第一行為n 第二行分別表示第1個人到第n個人每人的接水時間t1,t2,tn,每個資料之間有1個空格。輸出格式 輸出檔案有兩...
P1223 排隊接水
有 n 個人在乙個水龍頭前排隊接水,假如每個人接水的時間為 t it i ti 請程式設計找出這 n 個人排隊的一種順序,使得 n 個人的平均等待時間最小。輸入格式 第一行為乙個整數 n。第二行 n 個整數,第 i 個整數 t it i ti 表示第 i 個人的等待時間 t it i ti 輸出格式...
洛谷 P1223 排隊接水
這一題是貪心來求解問題,讓小的在前面,大的在後面,就是貪心下的最優解 這裡使用一下priority queue優先佇列在做,這個是stl容器 下面是 include include include include include using namespace std typedef pair in...