博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Jzoj2308 聚会
阅读量:5264 次
发布时间:2019-06-14

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

  Tzdin想组织一个圣诞晚会。N位女士和M位男士(M>=N)会被邀请参加这个聚会。在聚会的开始,Tzdin会派发一些写着某位男士信息的卡片给每位女士;每位女士都会收到若干张这种卡片。然后每位女士可以从她收到的卡片里挑选一位男士作为她的伴侣。我们可以认为经过Tzdin的引导,每位女士都一定可以挑选到一位男士作为他的伴侣,而每位男士最多成为1位女士的伴侣。Tzdin想知道的是,有哪些男士,无论女士们怎么选择,最终都一定会拥有伴侣。

著名的稳定婚姻问题

好了不瞎扯,我们来看看怎么用二分图来解决这个问题

我们先做一次最大匹配,让后看看对于每一个被匹配的男士,如果匹配他的女士不能被匹配到除该男士以外的人,那么答案+1,因为匹配总是是确定的,为n,这个条件很重要

匈牙利真是一个优美的算法,真的可以和Dijkstra媲美了

#pragma GCC optimize("O3")#pragma G++ optimize("O3")#include
#include
#include
#include
#define N 1010#define clear(t) memset(t,0,sizeof t)using namespace std;vector
G[N];int n,m,f[N],g[N],vis[N];bool match(int x){ for(int v,i=0;i

转载于:https://www.cnblogs.com/Extended-Ash/p/9477147.html

你可能感兴趣的文章
JVM运行内存分类
查看>>
【学习】博弈相关:Nim
查看>>
BZOJ4552 HEOI/TJOI2016 排序 线段树、二分答案
查看>>
13. 用Roberts、Sobel、Prewitt和Laplace算子对一幅灰度图像进行边缘检测。观察异同。...
查看>>
winform采用POST上传指定文件,并获取返回值
查看>>
一、Qt Creator的安装和hello world程序的编写
查看>>
C/C++ 关于大小端模式
查看>>
VueJs2.0建议学习路线
查看>>
An Algorithm
查看>>
导出Excel的几种方法
查看>>
赋值表达式也有值
查看>>
2013年下半年软件评測师(下午)试题分析与解答
查看>>
第一个项目--用bootstrap实现美工设计的首页
查看>>
线程概述
查看>>
struts的增删改查
查看>>
通过名称找到控件(VB.NET)
查看>>
servlet request getHeader(“x-forwarded-for”) 获取真实IP
查看>>
使用html+css+js实现弹球游戏
查看>>
VB.NET全角半角check
查看>>
[Leetcode 33] 38 Count and Say
查看>>