題目描述
設有n件工作分配給n個人。將工作i分配給第j個人所需的費用為c[i][j]。試設計乙個演算法,為每乙個人都分配一件不同的工作,並使總費用達到最小。輸入格式
輸入資料。第一行有1個正整數n (1≤n≤20)。接下來的n行,每行n個數,第i行表示第i個人各項工作費用輸出格式
將計算出的最小總費用輸出直接爆搜,搜到標記,最後對比找到最小解。
#include
using
namespace std;
int n, time[30]
[30], nowtime =
0, mintime = int_max /3;
bool p[30]
;void
dfs(
int d)
for(
int i =
1; i <= n; i++)}
intmain()
但只有80分,最後乙個點tle?!
**可以剪枝? 思考…
要是沒安排完就比最優解用的時間多了,就——
return!
修改後的**:
#include
using
namespace std;
int n, time[30]
[30], nowtime =
0, mintime = int_max /3;
bool p[30]
;void
dfs(
int d)
for(
int i =
1; i <= n; i++
)dfs
(d +1)
; nowtime -
= time[d]
[i], p[i]=0
;}}int
main()
青藤 10193 工作分配
題目描述新錄a b c三個工人,每人分配乙個工種,每個工種只需一人,經測試,三人做某種工作的效率如下表所示。如何分配三人的工作才能使他們工作效益最大?輸入格式為1個3 3的矩陣 矩陣的第一行為a做三種工作的效益,第二行為b做三種工作的效益,第三行為c做三種工作的效益。輸入保證各效益的範圍可能超過in...
青藤oj 10193 工作分配
新錄a b c三個工人,每人分配乙個工種,每個工種只需一人,經測試,三人做某種工作的效率如下表所示。如何分配三人的工作才能使他們工作效益最大?為1個3 3的矩陣 矩陣的第一行為a做三種工作的效益,第二行為b做三種工作的效益,第三行為c做三種工作的效益。輸入保證各效益的範圍可能超過int能表示的範圍,...
工作分配問題
問題 設有n件工作分配給n個人,將工作i分配給第j個人所需的菲傭為cij,試設計乙個演算法,為每乙個人分配一件不同的工作,並使總費用達到最小。輸入 第一行有乙個正整數n,接下來n行,每行n個數,表示工作費用。輸入 最小總費用 例子 輸入 3 10 2 3 2 3 4 3 4 5 輸出 9 inclu...