博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdu3605——Escape(二分图多重匹配)
阅读量:2344 次
发布时间:2019-05-10

本文共 1618 字,大约阅读时间需要 5 分钟。

Problem Description

2012 If this is the end of the world how to do? I do not know how. But now scientists have found that some stars, who can live, but some people do not fit to live some of the planet. Now scientists want your help, is to determine what all of people can live in these planets.

Input

More set of test data, the beginning of each data is n (1 <= n <= 100000), m (1 <= m <= 10) n indicate there n people on the earth, m representatives m planet, planet and people labels are from 0. Here are n lines, each line represents a suitable living conditions of people, each row has m digits, the ith digits is 1, said that a person is fit to live in the ith-planet, or is 0 for this person is not suitable for living in the ith planet.
The last line has m digits, the ith digit ai indicates the ith planet can contain ai people most..
0 <= ai <= 100000

Output

Determine whether all people can live up to these stars
If you can output YES, otherwise output NO.

Sample Input

1 1
1
1

2 2

1 0
1 0
1 1

Sample Output

YES
NO

n个人移民到m个星球上,每个星球限制了人数,用一个0-1矩阵表示第i行的人是否愿意移民到第j列个星球上。最后输出所有人是否能顺利移民。

这道题有两种做法,一种是网络流加缩点,因为n很大m很小,一定有许多人的想去同一个星球,但二进制缩点什么的看不懂,只好放弃。
第二种是二分图多重匹配,大概是用num数组记录这个点已经住了多少人,如果不超过容量cap就还能在加,或者去别的星球,如果还是不行就失败了。

#include 
#include
#include
#include
#include
#include
#include
#include
//#include
#include
#define INF 0x3f3f3f3f#define MAXN 110000#define Mod 10001using namespace std;int map[MAXN][12];int vis[12],link[12][MAXN];int num[12],cap[12];int n,m;int find(int v){ for(int i=1;i<=m;++i) { if(map[v][i]&&!vis[i]) { vis[i]=1; if(num[i]

转载地址:http://ytcvb.baihongyu.com/

你可能感兴趣的文章
ajax 跨域iis6 设置
查看>>
4.0版本改动
查看>>
IE8 9 ajax no-transport ajax 问题
查看>>
oracle 启动dbconsole
查看>>
entity-framework 6解决方案中多个项目使用
查看>>
ios基础
查看>>
unity3d
查看>>
metronic 1.5
查看>>
unity3d 4 assert store
查看>>
tab bar control 注意事项
查看>>
sql优化部分总结
查看>>
IDEA运行时动态加载页面
查看>>
UML总结(对九种图的认识和如何使用Rational Rose 画图)
查看>>
js遍历输出map
查看>>
easeui分页
查看>>
20个非常有用的Java程序片段
查看>>
Enterprise Architect使用教程
查看>>
Enterprise Architect 生成项目类图
查看>>
浅入深出 MySQL 中事务的实现
查看>>
UML总结(对九种图的认识和如何使用Rational Rose 画图)
查看>>