BZOJ 1191 匈牙利算法
来源:互联网 发布:怎么查看 sqlserver 编辑:程序博客网 时间:2024/05/16 06:38
一道比较明显的二分图匹配。。。我们可以把问题和锦囊妙计看成两个点集,将问题与它所能使用的锦囊妙计连一条有向边,然后在二分图中用匈牙利算法求最大匹配
#include<cstdio>#include<cstring>#include<algorithm>using namespace std;#define maxn 10005int pre[maxn],last[maxn],other[maxn];int link[maxn],l,n,m,ans;bool flag[maxn]; void connect(int x,int y){ l++; pre[l]=last[x]; last[x]=l; other[l]=y; } bool check(int u){ for (int p=last[u];p;p=pre[p]) { int v=other[p]; if (!flag[v]) { flag[v]=1; if (link[v]==0||check(link[v])) { link[v]=u; return 1; } } } return 0;} int main(){ scanf("%d%d",&n,&m); for (int i=1;i<=m;i++) { int a,b; scanf("%d%d",&a,&b); connect(i,a); connect(i,b); } for (int i=1;i<=m;i++) { memset(flag,0,sizeof flag); if (check(i)) ans++;else break; } printf("%d\n",ans); return 0; }
1 0
- BZOJ 1191 匈牙利算法
- BZOJ 1191 匈牙利算法
- bzoj 1191 匈牙利算法 二分图匹配
- BZOJ 1059 匈牙利算法
- bzoj 1191超级英雄Hero|匈牙利算法|水题
- bzoj 1191: [HNOI2006]超级英雄Hero (匈牙利算法)
- BZOJ[1191][HNOI2006]超级英雄Hero 匈牙利算法
- BZOJ 1562([NOI2009]变换序列-匈牙利算法)
- 【bzoj 1854】[Scoi2010]游戏(匈牙利算法)
- BZOJ[1854][Scoi2010]游戏 匈牙利算法
- bzoj 1562: [NOI2009]变换序列 匈牙利算法
- BZOJ 2557: [Poi2011]Programming Contest 匈牙利算法
- BZOJ 1191 超级英雄hero(二分图匹配,匈牙利算法)
- bzoj 1191 [HNOI]超级英雄Hero 二分图最大匹配(匈牙利算法)
- BZOJ 2547(匈牙利算法-任意边的处理)
- BZOJ 1059 矩阵游戏(二分图匹配,匈牙利算法)
- BZOJ 3168 Heoi2013 钙铁锌硒维生素 矩阵求逆+匈牙利算法
- bzoj 1059: [ZJOI2007]矩阵游戏|二分图匹配|匈牙利算法
- <mvc:annotation-driven />
- 如何正确合理的设计一个接口项目
- XE8使用笔记
- 树链剖分模板
- 226. Invert Binary Tree
- BZOJ 1191 匈牙利算法
- 化装晚会(costume)暴力题解
- 如何设计一个优秀的API
- POJ1852 Ants
- 数据结构与算法(11)插值查找
- [数竞题(雾)][CodeChef]PARSIN/[JZOJ4704]Math
- 用keySet和entrySet取出元素
- Fragment 实现微信Tab显示
- MAtlib 的 cvAdaptiveThreshold 局部二值化