国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

poj 3041 Asteroids(二分圖最大匹配)

2019-11-14 10:54:00
字體:
供稿:網(wǎng)友

把矩陣的的每一行當(dāng)作一個(gè)頂點(diǎn),每一列當(dāng)作一個(gè)頂點(diǎn),共兩組頂點(diǎn)。如果點(diǎn)(i,j)有一個(gè)障礙,就是i行和j列有交點(diǎn),也就是點(diǎn)i和點(diǎn)j有一條邊,用最少的點(diǎn)覆蓋所有的邊,就是結(jié)果,也就是最小點(diǎn)覆蓋,最小點(diǎn)覆蓋數(shù) = 最大匹配數(shù)

#include <cstdio>#include <cstring>const int MAXN = 510;int N,K;int grid[MAXN][MAXN];int linker[MAXN];bool vis[MAXN];bool dfs(int u){ for(int v = 1; v <= N; ++v) { if(!vis[v] && grid[u][v]) { vis[v] = true; if(!linker[v] || dfs(linker[v]) ) { linker[v] = u; return true; } } } return false;}int hungary(){ int res = 0; memset(linker,0,sizeof(linker)); for(int i = 1; i <= N; ++i) { memset(vis,false,sizeof(vis)); if(dfs(i)) ++res; } return res;}int main(){ int a,b; while(scanf("%d %d",&N,&K) != EOF) { memset(grid,0,sizeof(grid)); for(int i = 0; i < K; ++i) { scanf("%d %d",&a,&b); grid[a][b] = 1; }
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 靖边县| 佛教| 彭水| 禹城市| 本溪市| 江西省| 泊头市| 自贡市| 福鼎市| 武夷山市| 望奎县| 澄江县| 曲水县| 西昌市| 涞源县| 靖远县| 外汇| 株洲市| 芜湖县| 中卫市| 河津市| 常熟市| 福贡县| 廊坊市| 长阳| 宜兰县| 工布江达县| 嘉义县| 德昌县| 全南县| 库尔勒市| 西青区| 福建省| 陆丰市| 师宗县| 灌阳县| 司法| 攀枝花市| 若羌县| 姚安县| 耒阳市|