hdu 1150 最小點覆蓋

2022-06-03 16:12:06 字數 812 閱讀 8209

題目大意;有兩台機器a和b以及n個需要執行的任務。每台機器有m種不同的模式,而每個任務都恰好在一台機器上執行。

如果它在機器a上執行,則機器a需要設定為模式xi,如果它在機器b上執行,則機器a需要設定為模式yi。每台機器上的任務可以按照任意順序執行,但是每台機器每轉換一次模式需要重啟一次。請合理為每個任務安排一台機器並合理安排順序,使得機器重啟次數盡量少。

注意狀態為0的即可

1 #include2 #include3 #include4

using

namespace

std;

5const

int maxn = 510;6

int un,vn;//

u,v的數目,使用前面必須賦值

7int g[maxn][maxn];//

鄰接矩陣

8int

linker[maxn];

9bool

used[maxn];

10bool dfs(int

u)1121}

22return

false;23

}24inthungary()

2533

return

res;34}

35int

main()

3650 printf("

%d\n

",hungary());51}

52return0;

53 }

hdu 1150 最小點覆蓋

題意大致是 有ab兩台機器,a機器有n個模式,b機器有m個模式,k個任務,每個任務可以由ab其中一台機器完成,但需要不同的模式。機器每轉換一次模式就要重啟一次,機器初始時的模式是0,求重啟的最小次數。我們首先將ab的不同模式看作乙個二分圖,對於每乙個任務i,如果它可以由a機器的j模式或者b機器的k模...

hdu1150 最小點覆蓋

題目鏈結machine schedule 有a和b兩個機器,每個機器有不同工作模式,有很多任務,每個任務可以自在a上以mode i執行或者是在b上以mode j執行,每次換mode都要重啟機器 給出k個任務,要求怎麼安排才能讓重啟次數最少 最小點覆蓋 最小覆蓋要求用最少的點 集合或 集合的都行 讓每...

匈牙利演算法之hdu1150

題目大意 有ab兩種機器,分別有很多種工作狀態.如果從一種狀態換到另外一種狀態的話.需要重啟機器.現在給乙個關係.表示任務i可以用a中的乙個機器或者是b中的乙個機器來完成.求最小的重啟次數.完成所有任務.題目連線 思路 由於每個任務都可以用a或b機器的某種工作狀態來完成,因此,對於每個任務,可以把a...