排隊接水 貪心演算法 C 實現

2021-10-01 09:20:35 字數 783 閱讀 2553

** 有n個人在乙個水龍頭前排隊接水,假如每個人接水的時間為ti,請程式設計找出這n個人排隊的一種順序,使得n個人的平均等待時間最小。**

** 共兩行,第一行為n(1≤n≤1000);第二行分別表示第1個人到第n個人每人的接水時間t1,t2,…,tn,每個資料之間有1個空格。**

** 有兩行,第一行為一種排隊順序,即1到n的一種排列;第二行為這種排列方案下的平均等待時間(輸出結果精確到小數點後兩位)。**

10

56 12 1 99 1000 234 33 55 99 812

3 2 7 8 1 4 9 6 10 5

291.90

#include

#include

using namespace std;

int main()

for(int i=

1;i<=n;i++

)for

(int i=

1;i<=n-

1;i++)}

} double sum=0;

for(int i=n-

1;i>=

1;i--)}

for(int i=

1;i<=n;i++)

cout

1;i<=n;i++

) cout

)<1.0/n;

return0;

}

ok~~~~~~~~~~

排隊接水(貪心演算法)

題目描述 有 n 個人在乙個水龍頭前排隊接水,假如每個人接水的時間為 ti,請程式設計找出這 n 個人排隊的一種順序,使得 n 個人的平均等待時間最小。輸入格式 第一行為乙個整數 n。第二行 n 個整數,第 i 個整數 ti 表示第i個人的等待時間 ti。輸出格式 輸出檔案有兩行,第一行為一種平均時...

貪心演算法 51nod排隊接水

n個人一起排隊接水,第i個人需要b i 的時間來接水。1 n 1000 0 b i 1000 同時只能有乙個人接水,正在接水的人和沒有接水的人都需要等待。完成接水的人會立刻消失,不會繼續等待。你可以決定所有人接水的順序,並希望最小化所有人等待時間的總和。收起第一行乙個整數n 接下來n行,每行乙個整數...

貪心演算法6 排隊接水問題

題目描述 有n個人排隊到r個水龍頭去打水,他們裝滿水桶的時間t1,t2 tn為整數且各不相同,應如何安排他們的打水順序才能使他們花費的總時間最少?只有一組輸入資料哦。輸入4 2 2 6 4 5 輸出23 所有人的花費時間總和 樣例輸入 4 22 6 4 5 樣例輸出 int a maxn 每個人打水...