搭配飛行員
題面:
飛行大隊有若干個來自各地的駕駛員,專門駕駛一種型號的飛機,這種飛機每架有兩個駕駛員,需乙個正駕駛員和乙個副駕駛員。由於種種原因,例如相互配合的問題,有些駕駛員不能在同一架飛機上飛行,問如何搭配駕駛員才能使出航的飛機最多。
因為駕駛工作分工嚴格,兩個正駕駛員或兩個副駕駛員都不能同機飛行。
2<=n<=100
思路:二分圖最大匹配,二分圖上跑一下最大流即可
#include
#define inf 0x3f3f3f3f
using
namespace std;
const
int n =
10005
;int n, m, ss, tt;
int dis[n]
;int cur[n]
;queue<
int> q;
struct edge e[n *4]
;int head[n]
, cnt =-1
;void
add(
int from,
int to,
int value)
bool
bfs(
int s,
int t)}}
return dis[t]!=-
1;}int
dfs(
int x,
int t,
int maxflow)
return ans;
}int
dinic
(int s,
int t)
return ans;
}int
main()
ss =
0, tt = n +1;
for(
int i =
1; i <= m; i++
)for
(int i = m +
1; i <= n; i++
)printf
("%d\n"
,dinic
(ss, tt));
return0;
}
網路流24題 搭配飛行員
題目 洛谷p2756 tips 兩處的輸出格式不同,提交時注意輸出格式233 解法題目其實是一道二分圖匹配 匈牙利水過 考慮網路流建模。建立兩點超源 s s 超匯t role presentation style position relative t t,對於搭配,若 u u 與v role pr...
網路流24題 搭配飛行員
飛行大隊有若干個來自各地的駕駛員,專門駕駛一種型號的飛機,這種飛機每架有兩個駕駛員,需乙個正駕駛員和乙個副駕駛員。由於種種原因,例如相互配合的問題,有些駕駛員不能在同一架飛機上飛行,問如何搭配駕駛員才能使出航的飛機最多。因為駕駛工作分工嚴格,兩個正駕駛員或兩個副駕駛員都不能同機飛行。input 第一...
網路流24題 搭配飛行員
輸入檔案 flyer.in輸出檔案 flyer.out簡單對比 時間限制 1 s 記憶體限制 128 mb 問題描述 飛行大隊有若干個來自各地的駕駛員,專門駕駛一種型號的飛機,這種飛機每架有兩個駕駛員,需乙個正駕駛員和乙個副駕駛員。由於種種原因,例如相互配合的問題,有些駕駛員不能在同一架飛機上飛行,...