BZOJ2140_稳定婚姻_KEY】的更多相关文章

题目传送门 暴力直接对于每个点跑一遍二分图匹配,能拿四十分. 然而我们考虑正解. 对于一对Couple我们建♂->♀的一条边,对于一对曾经有恋情的情侣我们建♀->♂的一条边. 跑Tarjan缩点. 判断每一对Couple,如果在同一个强连通分量里,他们就不稳定(即能通过曾经有恋情的关系跑回来). code: /************************************************************** Problem: 2140 User: yekehe Lan…
题目链接: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…
题解: 题意就是求二分图的必须边. 我们有结论: 在残量网络上跑tarjan,对于一条边(u,v) 如果该边满流||scc[u]==scc[v],那么该边是可行边. 因为如果scc[u]==scc[v],那么说明v到u有通路,我们把v-u的路以及u-v这条边全部反色,也就是匹配->非匹配,非匹配->匹配.同样还是最大匹配.这说明该边是可行的. 如果该边满流&&scc[u]!=scc[v],那么该边是必须边. 因为如果去掉这条边,最大匹配会减少1(想想看),所以该边必须出现在最大…
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…