【tarjan】BZOJ2140-稳定婚姻】的更多相关文章

2140: 稳定婚姻 Time Limit: 2 Sec  Memory Limit: 259 MBSubmit: 1321  Solved: 652[Submit][Status][Discuss] Description 我国的离婚率连续7年上升,今年的头两季,平均每天有近5000对夫妇离婚,大城市的离婚率上升最快,有研究婚 姻问题的专家认为,是与简化离婚手续有关.25岁的姗姗和男友谈恋爱半年就结婚,结婚不到两个月就离婚,是典 型的“闪婚闪离”例子,而离婚的导火线是两个人争玩电脑游戏,丈夫一…
题解: 题意就是求二分图的必须边. 我们有结论: 在残量网络上跑tarjan,对于一条边(u,v) 如果该边满流||scc[u]==scc[v],那么该边是可行边. 因为如果scc[u]==scc[v],那么说明v到u有通路,我们把v-u的路以及u-v这条边全部反色,也就是匹配->非匹配,非匹配->匹配.同样还是最大匹配.这说明该边是可行的. 如果该边满流&&scc[u]!=scc[v],那么该边是必须边. 因为如果去掉这条边,最大匹配会减少1(想想看),所以该边必须出现在最大…
发现如果$B_i$和$G_j$配对,那么$B_j$又要找一个$G_k$配对,$B_k$又要找一个$G_l$配对,一直到某一个$B_x$和$G_i$配对上为止,才是不稳定的. 暴力是二分图匹配.匈牙利算法(据说可过).仔细观察,将配对关系和潜在关系全连边,不稳定的结果则是一个环. 但是不能直接就这样找.因为无向的话,并不能保证$B_i$和$G_j$配对后就一定从$G_j$走向$B_j$.所以为了保证走向正确,需要定一下向. 将所有$G$点(糟糕的名称)连边指向他对应的配偶$B$点,然后所有$B$点…
[BZOJ2140]稳定婚姻 Description 我国的离婚率连续7年上升,今年的头两季,平均每天有近5000对夫妇离婚,大城市的离婚率上升最快,有研究婚姻问题的专家认为,是与简化离婚手续有关. 25岁的姗姗和男友谈恋爱半年就结婚,结婚不到两个月就离婚,是典型的“闪婚闪离”例子,而离婚的导火线是两个人争玩电脑游戏,丈夫一气之下,把电脑炸烂.有社会工作者就表示,80后求助个案越来越多,有些是与父母过多干预有关.而根据民政部的统计,中国离婚五大城市首位是北京,其次是上海.深圳,广州和厦门,那么到…
[bzoj2140]: 稳定婚姻 哎..都是模板题.. 一眼看过去 哇 二分图哎 然后发现好像并不能匈牙利算法 自己xjb画两张图,发现二分图左向右连配偶的边,然后右向左连交往过的边 然后如果Bi Gi在同一个强连通分量里面就一定可以在Bi Gi离婚以后再增广一次 最开始用map维护一下名字就好了 /* http://www.cnblogs.com/karl07/ */ #include <cstdlib> #include <cstdio> #include <cstrin…
题目背景 原<工资>重题请做2397 题目描述 我国的离婚率连续7年上升,今年的头两季,平均每天有近5000对夫妇离婚,大城市的离婚率上升最快,有研究婚姻问题的专家认为,是与简化离婚手续有关. 25岁的姗姗和男友谈恋爱半年就结婚,结婚不到两个月就离婚,是典型的“闪婚闪离”例子,而离婚的导火线是两个人争玩电脑游戏,丈夫一气之下,把电脑炸烂. 有社会工作者就表示,80后求助个案越来越多,有些是与父母过多干预有关.而根据民政部的统计,中国离婚五大城市首位是北京,其次是上海.深圳,广州和厦门,那么到底…
P1407 [国家集训队]稳定婚姻 题目描述 我国的离婚率连续7年上升,今年的头两季,平均每天有近5000对夫妇离婚,大城市的离婚率上升最快,有研究婚姻问题的专家认为,是与简化离婚手续有关. 25岁的姗姗和男友谈恋爱半年就结婚,结婚不到两个月就离婚,是典型的"闪婚闪离"例子,而离婚的导火线是两个人争玩电脑游戏,丈夫一气之下,把电脑炸烂. 有社会工作者就表示,80后求助个案越来越多,有些是与父母过多干预有关.而根据民政部的统计,中国离婚五大城市首位是北京,其次是上海.深圳,广州和厦门,那…
2140: 稳定婚姻 Description 我国的离婚率连续7年上升,今年的头两季,平均每天有近5000对夫妇离婚,大城市的离婚率上升最快,有研究婚姻问题的专家认为,是与简化离婚手续有关. 25岁的姗姗和男友谈恋爱半年就结婚,结婚不到两个月就离婚,是典型的“闪婚闪离”例子,而离婚的导火线是两个人争玩电脑游戏,丈夫一气之下,把电脑炸烂.有社会工作者就表示,80后求助个案越来越多,有些是与父母过多干预有关.而根据民政部的统计,中国离婚五大城市首位是北京,其次是上海.深圳,广州和厦门,那么到底是什么…
BZOJ_2140_稳定婚姻_强连通分量 Description 我国的离婚率连续7年上升,今年的头两季,平均每天有近5000对夫妇离婚,大城市的离婚率上升最快,有研究婚 姻问题的专家认为,是与简化离婚手续有关.25岁的姗姗和男友谈恋爱半年就结婚,结婚不到两个月就离婚,是典 型的“闪婚闪离”例子,而离婚的导火线是两个人争玩电脑游戏,丈夫一气之下,把电脑炸烂.有社会工作者就表 示,80后求助个案越来越多,有些是与父母过多干预有关.而根据民政部的统计,中国离婚五大城市首位是北京, 其次是上海.深圳,…
突然发现考前复习图论的时候直接把 KM 和 稳定婚姻 给跳了--emmm 结果现在刷训练指南就疯狂补档.QAQ. KM算法--二分图最大带权匹配 提出问题 (不严谨定义,理解即可) 二分图 定义:将点集 \(V\) 划分成两个不相交的集合 \(V_1,V_2\) (通常称为左右部点)使得不存在 \(u\in V_1,v\in V_2\) 且 \((u,v)\in E\) . 最大匹配 :给定一张二分图,求一个子图 \(G'\) ,称 \(G'\) 中的边为匹配边,原图 \(G\) 中的其他边为非…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1914 题目大意:问题大概是这样:有一个社团里有n个女生和n个男生,每位女生按照她的偏爱程度将男生排序,同时每位男生也按照自己的偏爱程度将女生排序.然后将这n个女生和n个男生配成完备婚姻. 如果存在两位女生A和B,两位男生a和b,使得A和a结婚,B和b结婚,但是A更偏爱b而不是a,b更偏爱A而不是B,则这个婚姻就是不稳定的,A和b可能背着别人相伴而走,因为他俩都认为,与当前配偶比起来他们更偏爱各自的新…
题目链接: 题目 Ladies' Choice Time Limit: 6000MS Memory Limit: Unknown 64bit IO Format: %lld & %llu 问题描述 Teenagers from the local high school have asked you to help them with the organization of next year's Prom. The idea is to find a suitable date for eve…
The Stable Marriage Problem   Description The stable marriage problem consists of matching members of two different sets according to the member's preferences for the other set's members. The input for our problem consists of: a set M of n males; a s…
Ladies' Choice Teenagers from the local high school have asked you to help them with the organization of next year'sProm. The idea is to find a suitable date for everyone in the class in a fair and civilized way. So,they have organized a web site whe…
2015/7/1 19:48 题意:给一个带权二分图  求稳定匹配 稳定的意义是对于某2个匹配,比如,( a ---- 1) ,(b----2) , 如果 (a,2)<(a,1) 且(2,a)<(2,b); 或者 (b,1)<(a,1) 且(b,1)<(b,2) 先不考虑相等的情况... 2015/7/5 9:27 可耻的又搜了题解.. 是很著名的稳定婚姻问题 先上原版问题描述 -----------------------------稳定婚姻问题-----------------…
/** 稳定婚姻:男生不停的求婚,女生不停地拒绝 **/ #include <iostream> #include <queue> #include <cstdio> #include <cstring> using namespace std; #define maxn 40 int pref[maxn][maxn],order[maxn][maxn],next[maxn]; int future_wife[maxn],future_huaband[max…
什么是算法?每当有人问作者这样的问题时,他总会引用这个例子:假如你是一个媒人,有若干个单身男子登门求助,还有同样多的单身女子也前来征婚.如果你已经知道这些女孩儿在每个男孩儿心目中的排名,以及男孩儿们在每个女孩儿心中的排名,你应该怎样为他们牵线配对呢? 最好的配对方案当然是,每个人的另一半正好都是自己的“第一选择”.这虽然很完美,但绝大多数情况下都不可能实现.比方说,男1号最喜欢的是女1号,而女1号的最爱不是男1号,这两个人的最佳选择就不可能被同时满足.如果好几个男孩儿最喜欢的都是同一个女孩儿,这…
题目描述 给出一个\(n\)行\(m\)列的矩阵\(A\), 保证满足以下性质: 1.\(m>n\). 2.矩阵中每个数都是\([0,n]\)中的自然数. 3.每行中,\([1,n]\)中每个自然数都恰好出现一次.这意味着每行中\(0\)恰好出现\(m−n\)次. 4. 每列中,\([1,n]\)中每个自然数至多出现一次. 现在我们要在每行中选取一个非零数,并把这个数之后的数赋值为这个数.我们希望保持上面的性质4,即每列中,\([1,n]\)中每个自然数仍然至多出现一次. \(n\leq 200…
<题目链接> 题目大意: 给你N个男生和N个女生,并且给出所有男生和女生对其它所有异性的喜欢程度,喜欢程度越高的两个异性越容易配对,现在求出它们之间的稳定匹配. 解题分析: 稳定婚姻问题的模板题,需要用到Gale_Shapley算法,GS算法讲解  >>> 这个算法还是很直观的. #include <iostream> #include <cstring> #include <stack> #include <string> #…
Description 给出一个N行M列的矩阵,保证满足以下性质: M>N. 矩阵中每个数都是 [0,N]中的自然数. 每行中, [1,N]中每个自然数刚好出现一次,其余的都是0. 每列中,[1,N]中每个自然数最多出现一次. 现在我们要在每行中选取一个非零数,并把这个数之后的数赋值为这个数.我们希望保持上面的性质4,即每列中,[1,N]中每个自然数仍最多出现一次. 对于 100% 的数据,N<200,M<400,T<50. Solution 稳定婚姻模型. 把行当成男孩,数字当成…
几对男女   给出每个人心中的优先级   进行最合理的匹配 要打印名字的话必须有一个名字数组 英文名用map 稳定婚姻问题: 每次循环遍历所有的男的 每个男的对目前未被拒绝的并且优先级最高的进行预匹配  如果1女的没有伴侣2女的对该男的好感度比女的伴侣的好感度更高   满足任意一个则进行匹配 不断循环直到所有男的都有伴侣 #include<cstdio> #include<string> #include<map> #include<iostream> #i…
题目链接 稳定婚姻问题:有n个男生n个女生,每个男/女生对每个女/男生有一个不同的喜爱程度.给每个人选择配偶. 若不存在 x,y未匹配,且x喜欢y胜过喜欢x当前的配偶,y喜欢x也胜过y当前的配偶 的完备匹配,则称这是一个稳定匹配. 稳定匹配一定存在,且存在一个\(O(n^2)\)的算法: 任选一个未匹配的男生x,按x的喜爱程度从大到小枚举每个女生,若当前女生没有配偶或喜欢x胜过喜欢当前配偶,则与x匹配.直到所有男生都匹配. 这一题我们用行表示男生,n个数表示女生.喜爱程度为:行更喜欢靠前的数,数…
简单稳定婚姻问题. 题目描述不够全面,当距离相同时容量大的优先选择. 稳定婚姻问题不存在无解情况. #include<iostream> #include<cstring> #include<algorithm> #include<cmath> #include<queue> #define maxn 205 using namespace std; struct point{ int num,v; double x,y,z; }Man_arra…
题目大意:稳定婚姻问题.... 题目分析:模板题. 代码如下: # include<iostream> # include<cstdio> # include<queue> # include<cstring> # include<algorithm> using namespace std; # define LL long long # define REP(i,s,n) for(int i=s;i<n;++i) # define CL…
目录 1 问题描述 2 解决方案   1 问题描述 何为稳定婚姻问题? 有一个男士的集合Y = {m1,m2,m3...,mn}和一个女士的计划X = {n1,n2,n3,...,nn}.每一个男士有一个排序的列表,把女士按照潜在的优先级进行排序.同样,每一个女士也有一个男士的优先级列表.现在,把男士和女士进行配对,要求尽可能的符合优先级的要求.使得最终的配对结果,男士对女士都可接受,不会出现拒绝的情况,即每对男士和女士都是稳定的. 2 解决方案 上述对于稳定婚姻问题的解释有点牵强,具体可以看一…
我们先来学一下稳定婚姻问题 什么是稳定婚姻问题? 有n个女士和n个男士,他们要一一进行配对.每个男士心中对这n个女士都有一个排名,同理,每个女士心里对n个男性也有一个排名.我们要做的是,在他们配对完成以后,不存在以下这种情况:女士a和男士b进行了配对,但是女士c在男士b心里的排名要高于a,而且男士b在女士c心里的排名也高于女士c当前的伴侣,因为如果出现这种情况男士b和女士c很有可能抛下现在的配对对象而“出轨”.同理女士a也不存在一个男士d,条件也是如此. 我们有一个专门的算法来解决这个问题.算法…
Description The stable marriage problem consists of matching members of two different sets according to the member’s preferences for the other set’s members. The input for our problem consists of: a set M of n males; a set F of n females; for each ma…
Marriage is Stable Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 1047    Accepted Submission(s): 563Special Judge Problem Description Albert, Brad, Chuck are happy bachelors who are in love wi…
/** 题目: Ladies' Choice UVALive - 3989 链接:https://vjudge.net/problem/UVALive-3989 题意:稳定婚姻问题 思路: gale_shapley算法,参考文档:https://wenku.baidu.com/view/7aa841f2fab069dc502201cb.html */ #include <iostream> #include <cstring> #include <cstdio> #in…
ayout: post title: 训练指南 UVALive - 3989(稳定婚姻问题) author: "luowentaoaa" catalog: true mathjax: true tags: - 二分图匹配 - 图论 - 训练指南 Ladies' Choice UVALive - 3989 #include<bits/stdc++.h> using namespace std; typedef long long ll; const ll mod=998244…