
二分匹配
文章平均质量分 62
zxxxxzzz
这个作者很懒,什么都没留下…
展开
-
hdu 5093 Battle ships 经典二分匹配模型
建模参考:点击打开链接原创 2014-11-15 20:04:31 · 459 阅读 · 0 评论 -
hdu 2119 Matrix 行列匹配
裸的行列匹配,但是通过这题更清楚了二分图的构造,原创 2014-11-21 19:42:20 · 332 阅读 · 0 评论 -
hdu 2444 The Accomodation of Students 判断是否为二分图
用染色法判断是不是二分图,然后再输出最大匹配(据说风神)原创 2014-11-21 21:56:31 · 493 阅读 · 0 评论 -
hdu 2768 Cat vs. Dog二分匹配好题
给出一些狗和猫,及一些人喜欢或讨厌的狗或原创 2014-11-24 19:54:07 · 424 阅读 · 0 评论 -
hdu 3118 Arbiter 二分图概念
给出一张图,问最少删除多少条边,剩下的图无奇圈。因为二分图就是无奇圈的,所以问题转换为删去最少边,来组成二分图。注意到点很少,因此可以枚举所以点在不同的集合下的情况。然后对于在同一部分的点,只需要删除连接他们的边即可。囧rz。忘加特判和矩阵坐标忘了偏移找了好久的错= =#include#include#include#include#define N 20using na原创 2014-11-25 21:08:00 · 539 阅读 · 0 评论 -
hdu 3360 National Treasures 二分行列匹配
题目叫国家宝藏?!23333...很棒的行列匹配。给出一张图,原创 2014-11-24 21:15:18 · 555 阅读 · 0 评论 -
hdu 1045 Fire Net 二分行列匹配
类似hdu 5093#include#include#include#includeusing namespace std;int n, m, k;vector v[20];int link[20], vis[20];char a[5][5];int b[5][5] ,c[5][5];void init(){ for( int i = 1; i <= 19; i++原创 2014-11-24 22:03:58 · 506 阅读 · 0 评论 -
二分匹配--行列匹配
有时候行列匹配需要原创 2014-11-24 22:05:40 · 781 阅读 · 0 评论 -
hdu 1054 Strategic Game 最小点覆盖
建双向边,然后最大匹配/2。另外邻接矩阵会T..#include#include#includeusing namespace std;const int N = 1505;struct node{ int to, nxt;}e[N*N];int head[N];int cnt;int n;int link[N], vis[N];void add( int u,原创 2014-12-06 22:36:50 · 470 阅读 · 0 评论 -
hdu 2819 swap
传送门:http://acm.hdu.edu.cn/showproblem.php?pid=2819原创 2014-08-22 15:27:09 · 545 阅读 · 0 评论 -
hdu 2063 过山车 裸模版
#include#include#include#include#include#define N 1005using namespace std;vector v[N];int link[N];int vis[N];int n, m, k;int find( int u ){ for( int i = 0; i < v[u].size(); i++ ) {原创 2014-11-21 19:20:53 · 881 阅读 · 0 评论 -
hdu 2236 无题II 二分 + 二分匹配
每次遇到二分都挑不出来------#include#include#include#include#define N 105using namespace std;int link[N], vis[N];int mat[N][N];int x;int maxx, minn;int MAXX, MINN;int n, mid;int dfs( int u ){原创 2014-11-26 18:49:03 · 519 阅读 · 0 评论 -
hdu 1528 Card Game Cheater
题意:两个人打牌,同一位置谁牌面大谁得一分原创 2014-11-20 20:41:15 · 412 阅读 · 0 评论 -
hdu 1179 Ollivanders: Makers of Fine Wands since 382 BC.
#include#include#include#includeusing namespace std;#define N 1005int link[N], vis[N];vector v[N];int n, m, k;int dfs( int u ){ for( int i = 0; i < v[u].size(); i++ ) { in原创 2014-11-18 22:56:55 · 410 阅读 · 0 评论 -
hdu 1083 Courses 二分匹配模板
数据很水= =#include#include#includeusing namespace std;#define N 305int link[N], vis[N];int n, p;vector v[N];int sum;void init(){ memset(link, 0, sizeof(link)); for(int i = 1; i <原创 2014-11-12 21:39:59 · 467 阅读 · 0 评论 -
hdu 1507 Uncle Tom's Inherited Land*
给出一张n*m的图二分图的行列式匹配。原创 2014-11-19 22:21:12 · 448 阅读 · 0 评论 -
hdu 1068 Girls and Boys
#include#include#include#includeusing namespace std;#define N 1005int link[N], vis[N];vector v[N];int n;int dfs( int u ){ for( int i = 0; i < v[u].size(); i++ ) { int to =原创 2014-11-18 22:54:20 · 7096 阅读 · 0 评论 -
hdu 1151 Air Raid
#include#include#include#includeusing namespace std;#define N 1005int link[N], vis[N];vector v[N];int n, m, k;int dfs( int u ){ for( int i = 0; i < v[u].size(); i++ ) { in原创 2014-11-18 22:57:58 · 398 阅读 · 0 评论 -
hdu 1498 50 years, 50 colors
#include#include#include#include#includeusing namespace std;#define N 55#define M 105int mat[M][M];vector v[M];int link[M], vis[N];int n;int hash_[M];void init(){ for( int i = 1;原创 2014-11-19 20:30:11 · 405 阅读 · 0 评论 -
hdu 1281 棋盘游戏
#include#include#include#includeusing namespace std;#define N 1005int link[N], vis[N];vector v[N];int n, m, k;int l[N], r[N];bool mat[N][N];int dfs( int u ){ for( int i = 1; i <= m;原创 2014-11-18 22:56:01 · 476 阅读 · 0 评论 -
hdu 1150 Machine Schedule
#include#include#include#includeusing namespace std;#define N 1005int link[N], vis[N];vector v[N];int n, m, k;int dfs( int u ){ for( int i = 0; i < v[u].size(); i++ ) { in原创 2014-11-18 22:58:36 · 382 阅读 · 0 评论 -
hdu 1350 Taxi Cab Scheme
给出一些地点的出发时刻, 起点,终点,问最少需要多少辆出租车才能满足出租要求(出租车开完某趟之后可以继续开)。现将问题转换为最小点覆盖(一辆车最多运多少趟),然后就可以直接得到最小路径覆盖了。#include#include#include#include#includeusing namespace std;#define N 505struct node{ int原创 2014-11-25 18:19:31 · 513 阅读 · 0 评论 -
hdu 3605 Escape 多重匹配模板 (Hungary ) | 最大流
N个人M个星球,每个人都有适合居住的星球,每个星球有最大的容纳人数。求是否行星能满足住人。相比二分图求最大匹配,变化在link数组的应用,及对行星人数限制这个条件寻找增广轨,而这里的增广轨即 ”原先已经找好居住行星的人需要找新的行星“ 这一过程。跑一次Hungary即可。注意这里要用c++否则会T。神奇的输入挂可减很多时间#include#include#includeusing原创 2014-12-10 18:41:05 · 595 阅读 · 0 评论