https://www.luogu.org/problem/show?pid=3386
匈牙利算法不断寻找增广路;
尽可能让当前枚举的i可以匹配;
时间复杂度自己看代码;

#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<algorithm>
#define Ll long long
using namespace std;
struct cs{int to,nxt;}a[1000008];
int head[1005],ll;
int link[1005];
bool vi[1005];
int n,m,e,x,y,ans;
bool dfs(int x){for(int k=head[x];k;k=a[k].nxt)if(!vi[a[k].to]){vi[a[k].to]=1;if(!link[a[k].to]||dfs(link[a[k].to])){link[a[k].to]=x;return 1;}}return 0;
}
int main()
{scanf("%d%d%d",&n,&m,&e);for(int i=1;i<=e;i++){scanf("%d%d",&x,&y);if(x>m||y>m)continue;a[++ll].to=y;a[ll].nxt=head[x];head[x]=ll;}for(int i=1;i<=n;i++){memset(vi,0,sizeof vi);if(dfs(i))ans++;}printf("%d",ans);
}

二分图——洛谷P3386 【模板】二分图匹相关推荐

  1. 洛谷 P3386 【模板】二分图匹配

    洛谷 P3386 [模板]二分图匹配 题目 题目背景 二分图 题目描述 给定一个二分图,结点个数分别为n,m,边数为e,求二分图最大匹配数 输入输出格式 输入格式: 第一行,n,m,e 第二至e+1行 ...

  2. 洛谷P3386:网络流之二分图匹配,最大流算法

    二分图:我的理解是,对图中的点集,可分为两个集合U和V,使得两个集合之间存在通路,且集合内部不存在通路.如上图. 匹配:两两不含公共端点的边集合M 最大匹配:边数最多的匹配 完美匹配:最大匹配的匹配数 ...

  3. 二分图——洛谷P1155 双栈排序

    https://daniu.luogu.org/problem/show?pid=1155 二分图染色+模拟 1.首先考虑一个简单情况--单栈排序,显然有这样的一个事实: a[i]和a[j] 不能压入 ...

  4. 专题·树链剖分【including 洛谷·【模板】树链剖分

    初见安~~~终于学会了树剖~~~ [兴奋]当初机房的大佬在学树剖的时候我反复强调过:"学树剖没有前途的!!!" 恩.真香. 一.重链与重儿子 所谓树剖--树链剖分,就是赋予一个链的 ...

  5. 洛谷·【模板】点分树 | 震波【including 点分树

    初见安-这里是传送门:洛谷P6329 [模板]点分树 | 震波 一.点分树 其实你会点分治的话,点分树就是把点分治时的重心提出来重新连城一棵树. 比如当前点是u,求出子树v的重心root后将root与 ...

  6. 【洛谷P3386】【模板】二分图匹配【网络流】

    题目大意: 题目链接:https://www.luogu.org/problemnew/show/P3386 求一个二分图的最大匹配. 思路: 二分图匹配的模板.可以用匈牙利做. 听说这道题卡Dini ...

  7. 洛谷P3386 【模板】二分图匹配

    匈牙利算法模板 1 /*by SilverN*/ 2 #include<algorithm> 3 #include<iostream> 4 #include<cstrin ...

  8. 二分图 洛谷P2055 [ZJOI2009]假期的宿舍

    [ZJOI2009]假期的宿舍 题目描述 学校放假了 · · · · · · 有些同学回家了,而有些同学则有以前的好朋友来探访,那么住宿就是一个问题.比如 A 和 B 都是学校的学生,A 要回家,而 ...

  9. 洛谷.4897.[模板]最小割树(Dinic)

    题目链接 最小割树模板.具体见:https://www.cnblogs.com/SovietPower/p/9734013.html. ISAP不知为啥T成0分了.. Dinic: //1566ms ...

最新文章

  1. PSVR开发者需要了解的9件事
  2. 获取固件加载基地址的几种方法
  3. 运行mysql时,提示Table ‘performance_schema.session_variables’ doesn’t exist
  4. OpenCV距离变换和分水岭算法的图像分割
  5. 不重复的随机数JAVA、C#·适合初级人员玩耍。
  6. 网络1711c语言第0次作业总结
  7. 519. 随机翻转矩阵
  8. 问题反馈信息处理平台开发过程
  9. linux能挂载的文件类型,mount命令是如何自动识别挂载点的文件系统类型的
  10. 如何保留小数点后任意一位数
  11. linux进程控制-exit()
  12. 机器学习中的Bias,Error,Variance的区别
  13. Windows Azure Storage (1) Windows Azure Storage Service存储服务
  14. REGEXP使用经验
  15. LabVIEW学习笔记(1)
  16. 【leetcode-字符串】:重复的子字符串(是否由它的一个子串重复多次构成)
  17. DBCO-PALA-b-PEG DBCO-聚硫辛酸-聚乙二醇
  18. Linux查看服务器配置
  19. 洛谷4550 收集邮票(期望DP)
  20. 最优化方法之黄金分割法,为什么是0.618?

热门文章

  1. MTK 8735A 8.1 自定义按键向APP发送广播
  2. 【会议通知】关于召开第十届全国生物信息学与系统生物学学术大会的重要补充通知(第二轮)...
  3. 给20块钱买可乐,每瓶可乐3块钱,喝完之后退瓶子可以换回1块钱,问最多可以喝到多少瓶可乐
  4. NOI:253 丛林里的路
  5. 艺赛旗(RPA)Numpy 入门学习
  6. 类脑计算机器人,机器人的类脑计算是什么?
  7. 詹姆斯高斯林_Google / Oracle上的高斯林
  8. 计算机共享有哪些方式,信息共享的方式有哪些
  9. android 心跳 简书,如何高效维持网络长连接:手把手教你实现 自适应的心跳保活机制...
  10. 数据通讯中的心跳信号