poj1422 Air Raid
来源:互联网 发布:wind资讯经济数据终端 编辑:程序博客网 时间:2024/05/22 00:13
本题若读懂题目就会发现是一道最短路径覆盖的裸题,之后先把无向图转化为二分图,然后再用匈牙利算法求出其最大匹配数,最后最短路径覆盖数就是n-最大匹配数。
建图方法:先拆点,将每个点分为两个点,左边是1到n个点,右边也是1到n个点,然后每一条有向边对应左边的点指向右边的点即可
const MAXN=120;vartc,n,m:longint;g:array[1..MAXN,1..MAXN]of longint;match,t:array[1..MAXN]of longint;h:array[1..MAXN]of boolean;procedure init;var i,x,y:longint;beginfillchar(match,sizeof(match),0);fillchar(t,sizeof(t),0);read(n);read(m);for i:=1 to m dobeginread(x,y);inc(t[x]);g[x,t[x]]:=y;end;end;function check(k:longint):boolean;var i:longint;beginfor i:=1 to t[k] doif(not h[g[k,i]])thenbeginh[g[k,i]]:=true;if(match[g[k,i]]=0)or(check(match[g[k,i]]))thenbeginmatch[g[k,i]]:=k;exit(true);end;end;exit(false);end;procedure hungarian;var i,ans:longint;beginans:=0;for i:=1 to n dobeginfillchar(h,sizeof(h),0);if(check(i))then inc(ans);end;writeln(n-ans);end;beginreadln(tc);while(tc<>0)dobegindec(tc);init;hungarian;end;end.
- poj1422 - Air Raid
- poj1422 Air Raid
- POJ1422 Air Raid
- ZOJ1525&&POJ1422&&HDU1151-Air Raid
- poj1422 zoj1525 Air Raid 最小路径覆盖
- POJ1422 Air Raid 【DAG最小路径覆盖】
- POJ1422-Air Raid(最小路径覆盖)
- 最小路径覆盖 poj1422 Air Raid
- Air Raid POJ1422 & HDU1151 最小路径覆盖
- POJ1422.Air Raid(空袭)——最小边覆盖
- POJ1422 Air Raid【二分图最小路径覆盖】
- poj1422 Air Raid 最小路径覆盖=顶点数-最大匹配数
- POJ1422——Air Raid(二分图,最小路径覆盖)
- poj1422-最小路径覆盖(不交叉)&二分图-Air Raid
- Air Raid
- Air Raid
- Air Raid
- Air Raid
- 开源jeecms,jeebbs学习笔记4——从jo_user表看持久层设计
- IT 技术网站集锦 (排名不分先后)
- VFP中,如何把指定目录信息(包括子目录)存入TXT文本文件!(已解决,代码实例)
- 直接修改字节码中的常量池
- java秒表/计时器实现
- poj1422 Air Raid
- Asp.net 中 GridView 在 RowDataBound事件中获取 某列值 的方法
- 玩转Spring事务(一)
- ViewGroup
- WTL双缓冲类CDoubleBufferImpl的缺陷
- 简易贪吃蛇(JAVA版)源代码
- java 字符串转json对象 js json 转 java对象
- Java多态:重写和重载
- C#数据库编程入门(2)