自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Cyhlnj

梦想之所以奢侈,是因为要你付出代价

  • 博客(25)
  • 收藏
  • 关注

原创 UOJ#272. 【清华集训2016】石家庄的工人阶级队伍比较坚强

传送门设运算 op1,op2op1,op2op1,op2,一个表示三进制不进位的加法,一个表示不退位的减法设 cnt1[x],cnt2[x]cnt1[x],cnt2[x]cnt1[x],cnt2[x] 分别表示 xxx 转成三进制后 1/21/21/2 的个数那么fi,x=∑fi−1,ybcnt1[x op2 y],cnt2[x op2 y]f_{i...

2019-01-27 17:16:27 301

原创 LOJ#6271. 「长乐集训 2017 Day10」生成树求和 加强版

传送门由于是边权三进制不进位的相加,那么可以考虑每一位的贡献对于每一位,生成树的边权相当于是做模 333 意义下的加法考虑最后每一种边权的生成树个数,这个可以直接用生成函数,在矩阵树求解的时候做一遍这个生成函数的模 333 意义下的循环卷积求出系数即可暴力多项式运算不可取考虑选取 333 个数字 xix_ixi​,使得 xi3≡1(mod 109+7)x_i^3\equiv1(...

2019-01-25 23:15:06 429

原创 LOJ#6035. 「雅礼集训 2017 Day4」洗衣服

传送门先处理出每一件衣服最早什么时候洗完,堆+贪心即可然后同样处理出每件衣服最早什么时候烘干然后倒序相加取最大值# include <bits/stdc++.h>using namespace std;typedef long long ll;const int maxn(1e5 + 5);int l, n, m, d[maxn], w[maxn];ll ans,...

2019-01-25 16:34:08 316

原创 LOJ#6032. 「雅礼集训 2017 Day2」水箱

传送门首先可以有一个平方复杂度的 DPDPDP设 fi,jf_{i,j}fi,j​ 表示前面 iii 个小格,高度为 jjj 的最大答案令 hih_ihi​ 表示隔板 iii 的高度当 j≤hij\le h_ij≤hi​ 时,转移到 fi+1,k,k∈[0,hi]f_{i+1,k},k\in [0,h_i]fi+1,k​,k∈[0,hi​]否则 fi,j→fi+1,jf{i,j}\rig...

2019-01-24 21:58:43 341

原创 BZOJ5317:[JSOI2018]战争(闵可夫斯基和)

令 a∈A,b∈Ba\in A,b\in Ba∈A,b∈B 则移动向量 ω\omegaω 使得存在 b+ω=ab+\omega=ab+ω=a那么 ω\omegaω 需要满足 ω=a−b\omega=a−bω=a−b黑科技:闵可夫斯基和直接构造闵可夫斯基和 C=a+(−b)C={a+(−b)}C=a+(−b)余下问题便是判断输入的移动向量是否在 CCC 内可以强行使凸包的最下面为 (0,0...

2019-01-19 13:41:03 485

原创 BZOJ4977: [[Lydsy1708月赛]跳伞求生

传送门直接贪心考虑到 nnn 个人的贡献都是 aia_iai​,另外 mmm 个人的贡献都是 ci−bic_i-b_ici​−bi​首先 ai>bja_i>b_jai​>bj​ 的限制不好做,所以将 a,ba,ba,b 从小到大排序枚举 aia_iai​ ,每次把小于 aia_iai​ 的 bbb 加入优先队列,只要从中间选一个最大的匹配,之后将 −ai-...

2019-01-18 12:36:32 295

原创 BZOJ4675: 点对游戏

传送门考虑每一对幸运点对的贡献,假设有 vvv 对一共可以选择 xxx 个点,总共 nnn 个点那么答案就是v×An−2x−2x(x−1)Anx=v×x(x−1)n(n−1)v\times\frac{A_{n-2}^{x-2}x(x-1)}{A_{n}^{x}}=\frac{v\times x(x-1)}{n(n-1)}v×Anx​An−2x−2​x(x−1)​=n(n−1)v×x(x−1...

2019-01-17 09:36:09 262

原创 Codeforces 1097 Alex and a TV Show

传送门除了操作 333 都可以 bitsetbitsetbitset现在要维护Ci=∑gcd(j,k)=iAjBkC_i=\sum_{gcd(j,k)=i}A_jB_kCi​=gcd(j,k)=i∑​Aj​Bk​类比 FWTFWTFWT,只要求出 Ai′=∑i∣dAdA'_i=\sum_{i|d}A_dAi′​=∑i∣d​Ad​就可以直接按位相乘了求答案就是莫比乌斯反...

2019-01-17 08:51:06 341

原创 UOJ#349. 【WC2018】即时战略

传送门按照紫荆花之恋的做法,动态维护一下点分树的形态把点随机打乱每次从当前的根开始 exploreexploreexplore,如果已经有了就暴力跳到那个点否则加入这个点注意一条链的要单独处理# include <bits/stdc++.h># include "rts.h"using namespace std;typedef long long ll;cons...

2019-01-16 21:50:43 381

原创 UOJ#55. 【WC2014】紫荆花之恋

传送门暴力思路就是每次点分治计算答案点分治之后,条件可以变成 disi−ri≤rj−disjdis_i-r_i\le r_j-dis_jdisi​−ri​≤rj​−disj​每次只要查找 rj−disjr_j-dis_jrj​−disj​ 的排名然后插入 disj−rjdis_j-r_jdisj​−rj​,随便拿个平衡树维护即可考虑如果带修改,就是动态点分治,每个点维护两个平衡树,一个表示...

2019-01-16 17:43:06 438

原创 CodeChef SADPAIRS:Chef and Sad Pairs

vjudge首先显然要建立圆方树对于每一种点建立虚树,考虑这一种点贡献,对于虚树上已经有的点就直接算否则对虚树上的一条边 (u,v)(u, v)(u,v),uuu 为父亲,假设上面连通块大小为 xxx,下面为 yyy切断 (u,v)(u, v)(u,v) 之间的点(不包括 uuu)都会有 x×yx\times yx×y 的贡献,差分一下贡献即可# include <bits/std...

2019-01-16 14:51:38 542

原创 BZOJ4771: 七彩树

传送门考虑维护每个颜色的虚树按照 dfndfndfn 顺序维护这些点,在这些点上 +1+1+1,相邻点的 lcalcalca 处 −1-1−1,这样,无论包含哪一个子树的几个点,子树权值和始终为 111可以用 set+LCAset+LCAset+LCA 实现现在变成了二维数点的问题,按照深度依次加入每个点用主席树维护,每个线段树维护 dfsdfsdfs 序即可# include <...

2019-01-16 10:30:52 248

原创 BZOJ1443: [JSOI2009]游戏Game

传送门这个博弈类似放骨牌,参见这道题所以就可以黑白染色之后跑二分图最大匹配,其中的不必匹配的点就是答案这些点是什么呢,yyyyyy 一下发现貌似就是残余网络中与 sss 或 ttt 在同一个强连通分量的点?# include <bits/stdc++.h>using namespace std;typedef long long ll;const int maxn(10...

2019-01-15 11:36:08 229

原创 UOJ#172. 【WC2016】论战捆竹竿

传送门首先这个题目显然就是先求出所有的 borderborderborder,问题转化成一个可行性背包的问题一个方法就是同余类最短路,裸跑 303030 分,加优化 505050 分首先有个性质borderborderborder 分成的等差数列的个数不超过 logloglog和回文树的性质的证明类似瞎画图一下就行了我们注意到可以一个一个等差数列的更新最短路要做到这个,必须能从之前的...

2019-01-15 09:22:52 429

原创 BZOJ3682: Phorni(后缀平衡树)

传送门后缀平衡树模板题用平衡树维护每一个后缀的排名关键在于查询两个后缀的大小可以用二分加hash,复杂度 log2nlog^2nlog2n 插入或者:每次前面插入一个字符,先比较两个后缀第一个字符的大小而后面的大小我们已经在平衡树上维护好了像这样分配权值给树上每个子树一个实数权值区间 [l,r][l,r][l,r],这个点权值为 mid=l+r2mid=\frac{l+r}{2...

2019-01-12 16:48:11 217

原创 BZOJ3600:没有人的算术

传送门如果能给每个 pairpairpair 按照权值编号就好了假设之前已经有了所有的权值的编号,现在考虑编号新的 pairpairpair如果看过了陈立杰的论文的话,不难得到一个重量平衡树的做法给树上每个子树一个实数权值区间 [l,r][l,r][l,r],这个点权值为 mid=l+r2mid=\frac{l+r}{2}mid=2l+r​左子树 [l,mid][l,mid][l,mid...

2019-01-12 15:46:10 275

原创 UOJ#191. 【集训队互测2016】Unknown

传送门这个题目实际上可以建立出树,然后重链剖分维护一条链的凸包然后离线询问排序斜率做到 nlog2nnlog^2nnlog2n,或者点分治+平衡树也行但是这个题目卡空间,数组一不小心就爆了卡一卡也能过考虑其它空间常数小并且又好写的做法根据一般的二进制分组的方法,每次这个块满了就合并儿子的凸包这样显然不对,只要又删又加就假了我们换一种方法,每次这个块满了就合并线段树同一层前一个节点的儿...

2019-01-11 12:53:44 442

原创 UOJ#414. 【APIO2018】新家

传送门首先二分答案 midmidmid,问题变成求区间 [l−mid,r+mid][l-mid,r+mid][l−mid,r+mid] 在该年份的不同类型个数为 kkk关于年份的限制可以离线下来现在的问题就是区间数颜色,一个套路就是维护每个颜色的后继,即这个位置颜色的下一个位置那么,如果有 (−∞,l−mid](-\infty,l-mid](−∞,l−mid] 的某一个值大于 r+midr...

2019-01-11 09:02:59 278

原创 UOJ169. 【UR #11】元旦老人与数列

传送门考虑用 segment tree beatssegment~tree~beatssegment tree beats 那一套理论,维护区间最小值 mnmnmn 和严格次小值 sesese那么可以直接 mlog2nmlog^2nmlog2n 维护前三个操作考虑维护历史最小值,先维护历史最小标记写了写发现 maxmaxmax 那个修改不好操作对于...

2019-01-10 18:52:10 267

原创 UOJ#400. 【CTSC2018】暴力写挂

传送门看到要求两棵树的 lcalcalca 深度不太好操作考虑枚举第二棵树的 lcalcalca,这样剩下的都是只和第一棵树有关的而注意到 dis(x,y)=d(x)+d(y)−2d(lca(x,y))dis(x,y)=d(x)+d(y)-2d(lca(x,y))dis(x,y)=d(x)+d(y)−2d(lca(x,y))那么 d(x)+d(y)−d(lca(x,y))=12(dis(x...

2019-01-06 17:56:55 341

原创 BZOJ3925: [Zjoi2015]地震后的幻想乡

传送门根据期望的线性性,算出第 iii 小的边作为最小生成树的最大边的概率,设为 PiP_iPi​那么根据题目的信息,答案就是 ∑im+1Pi\sum \frac{i}{m+1}P_i∑m+1i​Pi​考虑计算 PiP_iPi​,相当于在加入 iii 这条边的时候,前 i−1i-1i−1 条不连通,而 iii 条恰好连通设 gi,sg_{i,s}gi,s​ 表示点集 sss 中选择 iii...

2019-01-05 19:51:33 165

原创 UOJ#347. 【WC2018】通道(边分治)

传送门就是求两个点 a,ba,ba,b 使得 dis1(a,b)+dis2(a,b)+dis3(a,b)dis_1(a,b)+dis_2(a,b)+dis_3(a,b)dis1​(a,b)+dis2​(a,b)+dis3​(a,b) 最大step1对第一棵树边分治那么变成 d1(a)+d1(b)+dis2(a,b)+dis3(a,b)d_1(a)+d_1(b)+dis_2(a,b)+dis...

2019-01-05 17:44:48 322 1

原创 Berlekamp-Massey算法

BMBMBM 算法用处它可以用来求常系数线性递推的系数,并且可以求出最短的求出来有什么用呢?你可以闷声Cayley-Hamilton定理优化递推矩阵快速幂算法简介首先设一个数列 fff,我们想要试出其中满足fn=∑i=1maifn−i(n>m)f_n=\sum_{i=1}^{m}a_if_{n-i}(n>m)fn​=∑i=1m​ai​fn−i​(n>...

2019-01-04 22:38:03 2523 1

原创 Luogu4191:[CTSC2010]性能优化

传送门题目翻译:给定两个 nnn 次多项式 A,BA,BA,B 和一个整数 CCC,求 A×BCA\times B^CA×BC 在模 xnx^nxn 意义下的卷积显然就是个循环卷积,所以只要代入 ωnk\omega_n^{k}ωnk​ 进去求出点值,然后插值就好了???nnn 不是 2k2^k2k 的形式,不能直接 NTTNTTNTT怎么办呢?根据题目性质,可以把 nnn 拆成 2a13...

2019-01-02 23:05:25 246

原创 HDU3629:Convex

传送门求凸四边形的个数转化成总数减去凹四边形的个数凹四边形一定是一个三角形中间包含的另外一个点那么枚举被包含的点,其它的对于这个点极角排序被包含不好算,算总数减去不被包含的枚举三角形的一个顶点,那么另外一个顶点和这个顶点关于枚举的被包含的点的角度不超过 π\piπ那么直接 two−pointerstwo-pointerstwo−pointers 统计即可# include <...

2019-01-01 22:25:09 218

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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