假設有n個任務由k個可並行工作的機器完成。完成任務i需要的時間為ti。試設計乙個演算法找出完成這n個任務的最佳排程,使得完成全部任務的時間最早。
對任意給定的整數n和k,以及完成任務i需要的時間為ti,i=1~n。程式設計計算完成這n個任務的最佳排程。
給出輸入資料。第一行有2 個正整數n和k。第2 行的n個正整數是完成n個任務需要的時間。
將計算出的完成全部任務的最早時間輸出
7 32 14 4 16 6 5 3
17
#include#include#include#include#includeusing namespace std;
const int maxn=0x3f3f3f3f;
int n,k,ans,a[1001],s[1001];
void dfs(int x,int y)//第x個任務,所花時間為y
for(int i=1;i<=k;i++)
if(s[i]+a[x]b;
}int main()
最佳排程問題
假設有n n 20 個任務由k k 20 個可並行工作的機器完成。完成任務i需要的時間為ti。試設計乙個演算法,對任意給定的整數n和k,以及完成任務i 需要的時間為ti i 1 n。計算完成這n個任務的最佳排程,使得完成全部任務的時間最早。輸入格式 輸入資料的第一行有2 個正整數n和k。第2 行的n...
最佳排程問題
假設有n個任務由k個可並行工作的機器完成,完成任務i需要的時間為ti,對任意給定的整數n和k,以及完成任務i需要的時間ti,設計乙個演算法,求完成這n個任務的最佳排程,使得完成全部任務的時間最早。第一行有2個正整數n和k,第二行有n個正整數,表示ti n 7000,c樣例輸入7 3 2 14 4 1...
PTA 最佳排程問題
假設有n n 20 個任務由k k 20 個可並行工作的機器完成。完成任務i需要的時間為ti。試設計乙個演算法,對任意給定的整數n和k,以及完成任務i 需要的時間為ti i 1 n。計算完成這n個任務的最佳排程,使得完成全部任務的時間最早。輸入格式 輸入資料的第一行有2 個正整數n和k。第2 行的n...