[BZOJ2138]stone Hall定理+线段树

假设把每堆石子拆成AiAiA_i个点,每个询问拆成KiKiK_i个点,就相当于每次添加KiKiK_i个点,然后询问此时的最大匹配能增加多少。 通过Hall定理可以判断匹配的合法性。但因为本题的区间没有包含,把询问按照LiLiL_i排序,RiRiR_i是递增的,在剔除掉没有被任一区间覆盖的石子堆之...

2018-07-06 21:52:44

阅读数:111

评论数:0

[2018江苏省队集训] value 值域分块+斜率优化

先考虑a=ba=ba=b的情况。 我们按aiaia_i从小到大排序,枚举iii并令x=aix=aix=a_i,那么[i,n][i,n][i,n]都是xxx的贡献,接下来就是找一个最大的bj⋅(i−j),(j∈[1,i−1])bj⋅(i−j),(j∈[1,i−1])b_j\cdot (i-j),(...

2018-07-06 21:17:42

阅读数:157

评论数:0

min_25筛学习小记

终于在考试中碰到了一题不能用杜教筛的函数,被迫来学这个。。。 概述 首先这个函数f(x)f(x)f(x)要求是积性函数,而且f(p)f(p)f(p)和f(pc)f(pc)f(p^c)都要很好计算,设一个“假的”f′(x)f′(x)f'(x)表示把xxx直接当成质数时的f(x)f(x)f(x...

2018-07-04 22:02:41

阅读数:223

评论数:1

[联合集训6-26] 树上染色 决策单调性

我们设cost(y,x)cost(y,x)cost(y,x)表示从yyy刷到xxx的代价,设du=h−depth(u),du=h−depth(u),d_u=h-depth(u),。 cost(y,x)=Cy⋅(dx(dx+1)2−dy(dy−1)2)+C2y⋅(dx−dy+1)−Hycost(y...

2018-07-02 21:17:27

阅读数:88

评论数:0

[联合集训6-25] 蓝雨 线段树+主席树+hash

先考虑p=qp=qp=q的情况,习惯先把求第kkk大变成求第kkk小。 那么我们逐个确定第kkk小的串每种数字包含了多少个。假设当前我们已经确定了x−1x−1x-1之前的数的个数,此时对于每个左端点iii,合法的右端点都是一个区间[li,ri][li,ri][l_i,r_i]。现在考虑二分确定x...

2018-06-26 20:46:05

阅读数:88

评论数:0

[联合集训6-26] 盒子 莫比乌斯反演+杜教筛

题目就是求∑ni=1∑nj=1i+jgcd(i,j)−2n2∑i=1n∑j=1ni+jgcd(i,j)−2n2\sum_{i=1}^n\sum_{j=1}^n\frac{i+j}{\gcd(i,j)}-2n^2 枚举d=gcd(i,j)d=gcd(i,j)d=\gcd(i,j), ∑d=1n∑...

2018-06-26 20:28:13

阅读数:72

评论数:0

[联合集训6-22] 路灯 整体二分+扫描线树状数组

先给每个点重新设一个坐标(就是把给定的两个边界强行定成横纵坐标找),这个坐标可以直接通过和两个边界叉积得到。 于是点iii的答案就是其左下方所有点答案的第kikik_i小值,如果不足kikik_i个点答案就是iii。 于是我们可以考虑整体二分,二分一个时间MidMidMid,把编号≤Mid≤M...

2018-06-22 22:12:20

阅读数:49

评论数:0

[联合集训6-22] monkey_sort 概率与期望+矩阵快速幂+树状数组

根据期望的线性性,我们只需对于每两个位置(i,j)(i,j)(i,j)计算出其相对位置改变的概率,并根据aiaia_i和ajaja_j的大小关系统计贡献即可。 于是我们不难得到一个O(n2k)O(n2k)O(n^2k)的DP。设fi,j,kfi,j,kf_{i,j,k}表示当前(i,j)(i,j...

2018-06-22 21:58:08

阅读数:98

评论数:0

[联合集训6-22] 疑惑 位运算+FFT

根据期望的线性性,我们可以对每一位分别考虑其为111的概率。那么假设一位有c0c0c_0个000,c1c1c_1个111,选kkk个xor和为111的方案数显然为∑c1i=0[i|2](c1i)(c0k−i)∑i=0c1[i|2](c1i)(c0k−i)\sum_{i=0}^{c_1}[i|2]{...

2018-06-22 21:18:26

阅读数:75

评论数:0

[联合集训6-21] 最小拓扑序 贪心

首先可以发现对于每个点vvv最多添加一条边指向它,假设添加了边x→v,y→v(x>y)x→v,y→v(x>y)x\to v,y\to v(x>y) 换成x→y,y→vx→y,y→vx\to y,y\to v不会更劣。 我们贪心选点加入拓扑...

2018-06-21 22:16:02

阅读数:54

评论数:0

[联合集训6-21] LiaPo 矩阵快速幂

奇数的很显然是(m−1)n−(−1)n(m−1)(m−1)n−(−1)n(m−1)(m-1)^n-(-1)^n(m-1)。 对于偶数的情况,假设先不考虑对称不同的限制,我们可以DP的时候只需要关心当前为是否与第一位相同。那么考虑到对称不同的限制,我们可以两个两个填(也就是iii与i+n2i+n2...

2018-06-21 21:54:34

阅读数:61

评论数:0

[联合集训6-19] K小数查询 分块+二分答案

有一种常数比较小的O(nn−−√log2n)O(nnlog2⁡n)O(n\sqrt n \log^2 n)的做法。 分块,每个块维护一个其中元素排好序之后的数组。修改的时候零散块直接重构,整块打标记。询问的时候先二分答案midmidmid,那么就转化成求小于等于midmidmid的数的个数,对于...

2018-06-21 21:36:58

阅读数:85

评论数:0

[联合集训6-19] 山洞 点分树

一句话题意就是求点分树最小深度。 点分树有一个性质:我们称点iii在点分树上距叶子的距离为其权值wiwiw_i,那么对于两个点u,vu,vu,v满足wu=wv=kwu=wv=kw_u=w_v=k,在原树路径(u,v)(u,v)(u,v)上一定存在点ttt使得wt&...

2018-06-21 21:27:39

阅读数:85

评论数:0

[联合集训6-19] 新干线 猜测题意+拆点网络流

题意还有一些细节如下: 1. 同一站点同一轨道同一时刻最多只能发一列货车 2. 直接经过的列车不占用停车位 3. 每条轨道上不允许发生客车超过货车的情况,但同时出发或同时到达某站是合法的,而且不占用该站台的停车位,就算客车货车速度相同且同时出发仍然算合法的 4. 求能发出货车且在Max...

2018-06-20 21:33:55

阅读数:53

评论数:0

[联合集训6-18] 栈 吉司机线段树

这个做法很巧妙。 考虑一个单调栈的插入过程。假如把插入的数倒过来,依次和栈底元素chkmax,如果chkmax成功就把它放入栈底,最终等效于顺序插入的结果。 于是我们把所有操作倒序处理,假如一个单调栈被询问了xxx次,我们就在线段树上给其分配xxx个下标,也就是说最后线段树一共是询问个数个下标...

2018-06-20 21:22:00

阅读数:126

评论数:0

[联合集训6-18]不同班级 容斥+分治NTT

我们设f(x)f(x)f(x)是至少有xxx个人与本班人匹配的方案数,那么根据容斥就有Ans=∑mi=0(−1)if(i)(n−i)!Ans=∑i=0m(−1)if(i)(n−i)!Ans=\sum_{i=0}^m (-1)^if(i)(n-i)! ai=bi=1ai=bi=1a_i=b_i=1...

2018-06-20 21:05:29

阅读数:68

评论数:0

[联合集训6-18] 奥妮的大楼

问题转化就是给定nnn个二元组,每组中选出一个使得其互不相同,最大化另一个的和。 那么对于每个二元组我们对这两个值连一条无向边,现在的问题就是对每一条边定向使得每个点出度≤1≤1\le 1,并最大化每个点乘上其入度的和。 那么有解一定是若干个树和环套树,对于环套树的情况定向方式是唯一的,这样每...

2018-06-20 20:54:11

阅读数:51

评论数:0

[联合集训6-18]指阶数乘 扩展欧拉定理

设f(n)=n(n−1)(n−2)...f(n)=n(n−1)(n−2)...f(n)=n^{(n-1)^{{(n-2)}...}},那么f(n)modm=nf(n−1)modφ(m)+φ(m)modmf(n)modm=nf(n−1)modφ(m)+φ(m)modmf(n) \bmod m=n^{...

2018-06-20 20:45:59

阅读数:52

评论数:0

[联合集训6-15] 盟誓的文艺复兴 数论

若c=2kc=2kc=2k,abc=a(bk)2abc=a(bk)2ab^c=a(b^k)^2;若c=2k+1c=2k+1c=2k+1,abc=(ab)(bk)2abc=(ab)(bk)2ab^c=(ab)(b^k)^2。所以我们只需要考虑c≤3c≤3c\le 3的情况。 那么能表示成ab2ab...

2018-06-20 20:37:24

阅读数:147

评论数:0

[联合集训6-15]相互再归的鹅妈妈 数位DP+斯特林反演

问题要求无序方案数,可以转化成求有序方案数再除以n!n!n!即可。 先考虑去掉互不相同的限制,最后用斯特林数容斥掉即可。 可以发现从高往低扫,假如出现RRR有一位是111,而且有一个数这位填了000,那么剩下的数就可以再RRR的范围内随便填,因为最后都可以通过这个数把异或和调成000。于是我们...

2018-06-20 19:41:32

阅读数:307

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭