hihoCoder 1127 二分图三·二分图最小点覆盖和最大独立集
2015-08-04 10:30
495 查看
#include <iostream> #include <cstdio> #include <cstring> using namespace std; int n,m; int edge[1005][1005]; int vis1[1005]; int vis2[10005]; bool search_path(int u){ for(int v = 1; v <= n; v++){ if(edge[u][v] && !vis2[v]){ vis2[v] = true; if(vis1[v] == -1 || search_path(vis1[v])){ vis1[v] = u; vis1[u] = v; return true; } } } return false; } int MaxMatch(){ int u,ans = 0; memset(vis1,-1,sizeof(vis1)); for(int i = 1; i <= n; i++){ if(vis1[i] == -1){ memset(vis2,0,sizeof(vis2)); if(search_path(i)) ans++; } } return ans; } int main(){ while(~scanf("%d%d",&n,&m)){ int x,y; memset(edge,0,sizeof(edge)); for(int i = 0; i < m; i++){ scanf("%d%d",&x,&y); edge[x][y] = edge[y][x] = 1; } int ans = MaxMatch(); printf("%d\n",ans); printf("%d\n",n-ans); } return 0; }
相关文章推荐
- iOS多线程编程之NSThread的使用
- extern c
- 南邮 OJ 1075 社会关系网络
- java 不区分KEY大小写的MAP
- 集成学习基础
- zoj 3551 Bloodsucker 概率DP
- First Article
- 拷贝构造函数与赋值运算符重载函数要点
- C#泛型集合
- android开发常用知识点备忘录
- windows环境下如何安装memcached教程
- Spring JdbcTemplate 查询出的Map,是如何产生大小写忽略的Key的?
- C++ 标准模板库STL multimap 使用方法与应用介绍
- 198 House Robber
- Hdu 1272 小希的迷宫(并查集)
- MongoDB实战系列之五:mongodb的分片配置
- [转] mysql中insert into select和create select用法
- The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path 错误
- 南邮 OJ 1074 南二的公告牌
- Mysql参数