【模板】二分图最大匹配
2022/1/12 23:06:21
本文主要是介绍【模板】二分图最大匹配,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
【模板】二分图最大匹配
采用了匈牙利算法,时间复杂度为n*e+m
#include <bits/stdc++.h> using namespace std; const int MAX=505; int n,m,e; int g[MAX][MAX],lft[MAX]; bool vis[MAX]; bool dfs(int s) { for (int i=1;i<=m;i++) if (g[s][i]&&!vis[i]) { vis[i]=true; if (lft[i]==0||dfs(lft[i])) { lft[i]=s; return 1; } } return 0; } int main() { int ans=0; cin>>n>>m>>e; for (int i=1;i<=e;i++) { int x,y; cin>>x>>y; g[x][y]=true; } for (int i=1;i<=n;i++) { memset(vis,false,sizeof(vis)); ans+=dfs(i); } cout<<ans<<endl; return 0; }
这篇关于【模板】二分图最大匹配的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-11cursor试用出现:Too many free trial accounts used on this machine 的解决方法
- 2025-01-11百万架构师第十四课:源码分析:Spring 源码分析:深入分析IOC那些鲜为人知的细节|JavaGuide
- 2025-01-11不得不了解的高效AI办公工具API
- 2025-01-102025 蛇年,J 人直播带货内容审核团队必备的办公软件有哪 6 款?
- 2025-01-10高效运营背后的支柱:文档管理优化指南
- 2025-01-10年末压力山大?试试优化你的文档管理
- 2025-01-10跨部门协作中的进度追踪重要性解析
- 2025-01-10总结 JavaScript 中的变体函数调用方式
- 2025-01-10HR团队如何通过数据驱动提升管理效率?6个策略
- 2025-01-10WBS实战指南:如何一步步构建高效项目管理框架?