二分图
LowestJN
强省弱OIer
展开
-
[BZOJ Contest-2017省队十连测推广赛1·T2][BZOJ4766][完全二分图的生成树个数]文艺计算姬
公式题答案是nm−1∗mn−1n^{m-1}*m^{n-1}%p快速幂的过程中会爆long long,所以还要打快速乘#include #include #include using namespace std;typedef long long ll;ll n,m,p;inline ll mul(ll x,ll y,ll p){ if(x<y) swap(x,原创 2017-03-07 20:26:53 · 1104 阅读 · 0 评论 -
[线段树][二分图 霍尔定理]LOJ#6062 && 2017 山东一轮集训 Day2. Pair
刚做过一道类似的题因为题目要求连续子序列,但是只要这个连续子序列和b序列两两对应,这就可以转化成一个二分图的模型。把b序列排序,一个ai就可以和b的一个后缀相连,可以看成一个覆盖某个后缀的线段,根据霍尔定理,排序后,bi至少要被i条线段覆盖,用线段树维护一下就可以了#include <iostream>#include <cstdio>#include <algorithm>using name原创 2017-07-11 17:43:27 · 941 阅读 · 0 评论 -
[AtCoder ARC076 .F] [二分图] [霍尔定理] Exhausted?
注意到这个模型可以转化成二分图 根据霍尔定理,对于任意S∈US\in U,都要满足S≥N(S)S\ge N(S),其中UU是全集,N(S)N(S)是与SS相连的点组成的集合。 因为N(S)N(S)都是一些在左边,一些在右边的形式,所以只要枚举一下N(S)N(S),用线段树维护一下|S||S|的最大值就可以了。#include <cstdio>#include <iostream>#inclu原创 2017-07-02 18:10:08 · 1728 阅读 · 3 评论 -
[LOJ#2290][THUWC 2017][概率][状压][DP][陈老师神题]随机二分图
又是一个冬令营未填的坑可以根据期望的直接定义,求出每个完美匹配出现的概率。 因为n很小,可以状压DP,fs,tf_{s,t}表示左边被匹配的状态为ss,右边被匹配的状态为tt时的概率,因为左右边被匹配的点个数是相同的,所以状态数大概为∑Cin2\sum {C^i_n}^2???但是肯定远远比这个小。然后直接做不太容易实现 可以把两条边的组拆分。 同时出现的组 可以拆成两条50%的边,以及25%原创 2017-07-04 17:39:00 · 1616 阅读 · 0 评论 -
[LOJ#6160][美团 CodeM 初赛 Round A][容斥][递推]二分图染色
题解#include <cstdio>#include <iostream>#include <algorithm>using namespace std;typedef long long ll;const int N=1e7+10,P=1e9+7;int n,f[N],fac[N],inv[N];inline ll C(int x,int y){ return 1LL*fac[x]*in原创 2017-07-06 20:22:46 · 648 阅读 · 0 评论 -
[线段树] [二分图] Codeforces VK Cup 2015 - Round 2 A. Berland Miners
首先把木棒按长度排序。 找找规律可以发现每个节点都会覆盖一个区间,而这个区间是一个前缀, 再找找规律发现,序列中第i个木棒被覆盖至少i次就会存在解(可以用霍尔定理证明),那么就可以线段树乱搞了。找出最右边的没有满足条件的木棒,增加的长度就至少是这个木棒的长度减去这个节点到根路径的最小值。用线段树乱搞一下就好了考场上多写了个二分,多了个log……就被卡成40分#include <cstdio>#原创 2017-07-06 21:21:03 · 615 阅读 · 0 评论 -
[二分图] 【JOI2017春季合宿】Port Facility
T2比T1可做多了…每个玩具相当于一条线段,交叉的线段之间连边,就变成求二分图染色的方案数考虑怎么建边把左端点排序,右端点用set维护,假设现在加入的线段为(l,r)因为有三元环就直接无解了,所以当前所有右端点比r小的线段都是相互包含的,否则就无解而这时候这些线段之后染色的颜色都是一样的,所以可以缩起来我的做法是把右端点最小的加入set,当它被弹出set的时候把右端点第二小...原创 2018-03-06 09:04:40 · 632 阅读 · 0 评论