有n個人在乙個水龍頭前排隊接水,假如每個人接水的時間為ti請程式設計找出這n個人排隊的一種順序,使得n個人的平均等待時間最小。
標準的貪心,將接水時間最短的排在最前面即可。
#include
using
namespace std;
#define int long long
#define ios ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
const
int n=
1005
;const
int mod=
998244353
;const
int inf=
0x7fffffff
;const
double pi=
3.1415926535
;using
namespace std;
signed
main()
for(i=
0;i}for
(i=0
;i) cout
1;i<=n;i++
)printf
("%.2lf"
,s/n)
;return0;
}
洛谷 P1223 排隊接水
這一題是貪心來求解問題,讓小的在前面,大的在後面,就是貪心下的最優解 這裡使用一下priority queue優先佇列在做,這個是stl容器 下面是 include include include include include using namespace std typedef pair in...
洛谷P1223 排隊接水
這裡主要想記一下強制型別轉換可能也需要浪費時間?一開始我是把sum定義為 int型別,下面的double s2 double sum n 有兩組資料死活跑不過,也不知道為啥,希望路過的大佬能給小弟看看。方法1 定義兩個陣列,乙個存資料,乙個存編號。include using namespace st...
洛谷 P1223 排隊接水
有 n 個人在乙個水龍頭前排隊接水,假如每個人接水的時間為 t i 請程式設計找出這 n 個人排隊的一種順序,使得 n 個人的平均等待時間最小。第一行為乙個整數 n。第二行 n 個整數,第 i 個整數 t i 表示第 i 個人的等待時間 t i 輸出檔案有兩行,第一行為一種平均時間最短的排隊順序 第...