[BZOJ1854][Scoi2010]游戏(二分图)
来源:互联网 发布:js给div赋值 编辑:程序博客网 时间:2024/05/17 03:43
题目描述
传送门
题解
二分图的最大匹配。
总是感觉复杂度有点不科学。
代码
// BZOJ 1854 #include<iostream>#include<cstring>#include<cstdio>using namespace std;const int max_n=1e6+5;const int max_e=max_n*4;int n,x,y,Max;int tot,point[max_n],nxt[max_e],v[max_e];int belong[max_n],vis[max_n];inline void addedge(int x,int y){ ++tot; nxt[tot]=point[x]; point[x]=tot; v[tot]=y;}inline bool find(int x,int k){ for (int i=point[x];i;i=nxt[i]) if (vis[v[i]]!=k) { vis[v[i]]=k; if (!belong[v[i]]||find(belong[v[i]],k)) { belong[v[i]]=x; return true; } } return false;}int main(){ scanf("%d",&n); for (int i=1;i<=n;++i) { scanf("%d%d",&x,&y); addedge(x,i); addedge(y,i); Max=max(Max,x); Max=max(Max,y); } for (int i=1;i<=Max;++i) if (!find(i,i)) { printf("%d\n",i-1); return 0; } printf("%d\n",Max);}
0 0
- [BZOJ1854][Scoi2010]游戏(二分图)
- [BZOJ1854][Scoi2010]游戏(二分图匹配)
- 【bzoj1854 Scoi2010】游戏(二分图匹配)
- bzoj1854: [Scoi2010]游戏(二分图匹配)
- BZOJ1854 [Scoi2010]游戏(并查集/二分图匹配)
- 【bzoj1854】 SCOI2010游戏 二分图匹配
- bzoj1854 [Scoi2010]游戏 并查集/二分图最大匹配
- [bzoj1854][Scoi2010]游戏(并查集/二分图最大匹配)
- bzoj1854 [Scoi2010]游戏(并查集)
- bzoj1854 [Scoi2010]游戏
- bzoj1854[Scoi2010]游戏
- bzoj1854[Scoi2010]游戏
- BZOJ1854 [Scoi2010]游戏
- BZOJ1854: [Scoi2010]游戏
- 【bzoj1854】[Scoi2010]游戏
- BZOJ1854: [Scoi2010]游戏
- bzoj1854[Scoi2010] 游戏
- 【bzoj1854】[Scoi2010]游戏
- Android实现获取短信验证码的功能(二)
- HTML5之语义化标签
- POJ 1664 分苹果(递归)。
- C++函数指针、函数对象与C++11 function对象对比分析
- android studio 使用github完整保存
- [BZOJ1854][Scoi2010]游戏(二分图)
- TCP/IP详解(二)---数据链路层、MTU
- Ubuntu下安装NTP服务器
- 网页分享到微信、微博、QQ等
- Hadoop Join
- find_xargs_exec
- python main函数中变量默认为global variable & SIGKILL SIGSTOP 无法捕获
- 合并两个有序的链表
- Spark定制版2:通过案例对SparkStreaming透彻理解三板斧之二