自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(289)
  • 收藏
  • 关注

原创 agc033 D Complexity (dp)

题意给一个网格,每个格子是黑的或者白的。定义一个网格的复杂度是:这个网格只有一种颜色,则复杂度是0否则,复杂度是min(max(切一刀所形成的两个网格复杂度)+1)min(max(切一刀所形成的两个网格复杂度)+1)min(max(切一刀所形成的两个网格复杂度)+1).求整个网格的复杂度n≤185n\leq185n≤1855s题解O(n5)O(n^5)O(n5)的dp是显然的...

2019-11-03 20:29:30 275

原创 CF587 F Duff is Mad (ac自动机,根号分治)

题意给出n个串,m个询问形如:S[l],S[l+1]..S[r]S[l],S[l+1]..S[r]S[l],S[l+1]..S[r]在S[t]S[t]S[t]中出现的次数之和。∑∣s∣≤105,m≤105\sum |s| \leq 10^5,m\leq10^5∑∣s∣≤105,m≤105思路搞半天都搞不出一个log的考虑上个根号算法:所有串建ac自动机,记m为所有串的长度和。S[t...

2019-11-02 07:13:01 350

原创 CF685C Optimal Point (数学)

CF685C 三维曼哈顿距离 数学题

2019-11-01 11:46:21 576

原创 CF506 E Mr. Kitayuta's Gift (计数)

CF506E 计数 性质 回文

2019-11-01 07:54:08 591

原创 CF666 E Forensic Examination (SAM,线段树合并)

SAM 线段树合并 子串出现次数

2019-10-31 18:59:00 221

原创 CF576 D Flights for Regular Customers (矩乘)

图论 最短路 矩阵乘法 观察

2019-10-31 08:29:33 327

原创 CF506 C Mr. Kitayuta vs. Bamboos (贪心)

题意有n根竹子,初始高度是h[i],每天结束时会长高a[i],每天你可以砍K刀,一刀能减小p的高度。可以在某一天内砍相同的竹子多次。问m天结束后,最高的竹子最矮是多高。n≤1e5,k≤10,m≤5000n\leq 1e5, k\leq 10,m\leq 5000n≤1e5,k≤10,m≤5000思路题解第一种做法没看懂,写一下第二种首先二分答案,判定是否存在方案:考虑倒着做,问题变成...

2019-10-30 20:30:15 327

原创 CF568E Longest Increasing Subsequence (dp)

题意给一个长度为n的,有K个位置空缺的序列。然后给出m个的候选数,用于填充空缺的地方。输出一组使得填充后最长上升子序列最长的方案。n≤1e5,k≤1000,k≤m≤1e5n \leq 1e5, k \leq 1000, k \leq m \leq 1e5n≤1e5,k≤1000,k≤m≤1e5思路观察可以发现一个O(n2)O(n^2)O(n2)的dp,尝试优化,调着调着之后发现fak...

2019-10-27 13:59:23 466

原创 arc100 F Colorful Sequences (计数)

arc100 F Colorful Sequences正难则反、分类讨论、拼凑计数。

2019-10-26 21:34:20 497

原创 CF526 F Pudding Monsters

题意求连续段数。n<=3e5思路析合树板题(然而并不会)考虑分治求。讨论max与min在左右两边的四种情况就行了。O(nlogn)O(n log n)O(nlogn)#include <bits/stdc++.h>using namespace std;const int N = 3e5 + 10, Z = 3e5 * 2;typedef long lo...

2019-10-25 21:02:17 398

原创 agc020 E Encoding Subsets (dp)

题意链接给你一个01串A,你可以使用(P*K)这样的方式来表示PPPP...P(k个P且k>1),允许嵌套。问满足AandB=BA and B = BAandB=B的B其表示方法数之和。两种表示方法不同当且仅当所对应的字符串不同。n<=100思路首先思考如何求一个确切的A的表示方法数。使用区间dp,开头要么没有括号,要么枚举第一个括号的长度,即可O(n3)O(n^3)O(...

2019-10-25 16:50:37 210

原创 agc037 D Sorting a Grid (二分图匹配)

题意给一个从1…n*m的被打乱的的网格图。现在按顺序进行以下三种操作:将每一行按某种顺序排列将每一列按某种顺序排列再将某一行按某种顺序排列请构造一种方案让他回到按顺序排列的状态。n<=100思路倒着推每次操作结束后的要求:我们称末状态在第i行的元素为颜色i,那么操作2结束之后每一行都要是所对应的颜色。那么操作1结束之后,要满足每一列都是1…n颜色的一个排列,才能使...

2019-10-24 16:08:40 303

原创 agc036D Negative Cycle (dp)

题意n个点的带权有向图,初始有一条链(i, i+1, 0),然后对于每对(i,j),i≠j(i,j),i\not =j(i,j),i​=j,若i<j则有(i,j,−1)(i,j,-1)(i,j,−1),否则是(j,i,1)(j,i,1)(j,i,1)。初始的边无法删除,给出每条边的删除代价,求删边之后没有负环的最小删边代价。n<=500n<=500n<=500思路...

2019-10-23 20:44:20 365

原创 codeforces的polygon平台使用指北

前言近来被迫用Polygon造题。polygon是codeforces开放给公众使用的一个造题平台。地址是https://polygon.codeforces.com由于平台是全英文的,所以这篇教程是面向懒得看英语的小伙伴们的。优缺点优点是用polygon造题,出锅率小,自动化程度高。国内访问不稳定,快如闪电和慢似蜗牛交替,令人抓狂。testlib.h是codeforces的造题...

2019-08-29 20:24:55 8650

原创 加速K进制不进位加法卷积的类FWT方法

并不是什么新方法,老早就有了。背景二进制的异或FWT实际上在做这样一件事:构造一个行列式不为0的Len阶方阵T,使得TA⋅TB=TCTA\cdot TB=TCTA⋅TB=TC将矩阵乘法拆开看,这个矩阵满足:∀x,i,j    T(x,i)T(x,j)=T(x,i⊕j)\forall {x,i,j}~~~~T(x,i)T(x,j)=T(x,i\oplu...

2019-08-24 11:20:07 647 1

原创 jzoj6327 数颜色 (LCT)

题面n,m,q≤105n,m,q \le 10^5n,m,q≤105分析很容易想出nlog⁡2nn\log^2 nnlog2n的做法,用点减边的方法求连通块数,比如:树剖后维护颜色块,从右往左枚举左端点后维护右端点答案。用LCT的access操作代替上述做法的树剖。注意此处不能make_root,因此事实上操作数量还要翻倍…由于树剖的log很难卡满,因此上述两做法还是可以通过此题的...

2019-08-23 21:55:44 285

原创 jzoj6321 点 (dp)

题面数轴上n个点,每个点可以二选一:往左d或者往右d。移动后,你可以使用若干条线段覆盖所有点,一条长度为L的线段的代价为a+bL.求最小代价。n,x,d≤150n,x,d\le 150n,x,d≤150题解听说是zzt的题,果然脑洞做法。先全部往右移动,再把d*2,就变成了要不要左移d。这题的做法是按d的大小讨论。假如d比较小,考虑暴力状压d位,复杂度是O(2dn)O(2^dn)O(...

2019-08-23 21:38:31 179

原创 jzoj5014 【NOI2017模拟3.13】矩阵 (线性代数,矩阵计数)

题意A,B,CA, B, CA,B,C都是n阶01方阵,给定CCC,现求有多少对有序(A,B)(A,B)(A,B)满足A∗B=CA * B = CA∗B=C.乘法是模2意义下的矩阵乘法。n≤2000n \leq2000n≤2000?迷得很这个题模2意义就相当于加法是xor,数量乘法是and,仍然能组成一个线性空间。因此下面的讨论是在数域0,1数域{0,1}数域0,1下的进行的。首先...

2019-08-18 21:22:57 297

原创 LCT的access时间复杂度的势能分析

先对树任意做轻重链剖分。然后设势函数www为同时是重边与虚边的边数。势函数的初值是O(n)O(n)O(n)的。考虑任意一次access(x)的复杂度,与其到根的虚边数量线性相关。这些虚边会变成实边。其中的轻边个数是O(log⁡n)O(\log n)O(logn),这一部分的复杂度分析完毕。其中的重边总数就是势函数,并且每花费一的时间势函数会相应减小,因此时间复杂度是势函数总和。接下来...

2019-08-09 22:43:57 949

原创 Burnside引理与Pólya计数

前置知识1.群 2.置换 3.置换群问题背景求解等价染色问题。(万恶的本质相同) 比如用k种颜色给一个2*2的方格染色,并认为旋转后相同的方案是本质相同的。 求有多少本质不同的方案。Burnside定理上面的问题也就是在求等价类个数了。 这个问题中,置换群就是恒等置换,转90,转180,转270。 先给出式子,将在后面证明。 等价类个数=∑C(f)|G|等价类个...

2019-08-09 16:33:27 255

原创 jzo1931 【2010集训队出题】神奇的K线 (dp)

不错的dp题。题意给出长度为n-1的序列p和长度为n的序列a,在a中删除或将某些位置的值改变,使得a差分后是b的一个前缀。 删除和修改分别有代价,并且一次修改可以修改为任意值。n <= 1500盲目分析先令bbb序列是前缀和并往右位移后的p序列。这样就是要找a’序列匹配b序列的权值相对位置(允许整体加减)观察发现a至少有一个位置被留下来并且没有修改。基础的暴力的话,可以通过枚举...

2019-08-08 22:12:26 150

原创 jzoj6177 【CTS2019Day1】随机立方体 (计数,概率)

题意要点直接算恰好不是很方便,考虑算至少然后容斥。先解决容斥系数的问题:先加上至少有K个极大的方案,再减去至少有K+1个极大的方案 * C(k + 1, k) (因为每一种方案都在前面算了这么多次),再加上…因此容斥系数应该是(−1)x−k⋅C(x,k)(-1)^{x-k}\cdot C(x,k)(−1)x−k⋅C(x,k)。证明也很好证,就不放了。先选出x个可以同时作为极大的点。(...

2019-05-21 21:44:55 312

原创 LOJ3045 「ZJOI2019」开关

简单的题目描述往往有着不简单的解法…要点分析考虑一个EGF第i项表示长度为i的最终状态为s的序列有多少个。再考虑上面的EGF,第i项是每一位操作了偶数次的序列有多少个。这两个都可以递推出来,只需要知道存evxe^{vx}evx的系数就可以了。考虑如何把EGF转OGF:设f,g分别是F,G对应的ogf.设h是答案ogf,则有h(x)g(x)=f(x)h(x)g(x)=f(x)...

2019-05-08 22:17:28 318

原创 GDSOI2019 D2 高中生数学题 (计算组合数中的质数幂次、库默尔定理、数位dp)

库默尔定理:C(n,m)C(n,m)C(n,m)中含有的质数p幂次= n−mn - mn−m在p进制下的借位次数= m+(n−m)m + (n - m)m+(n−m)在p进制下的进位次数。原理:Ans=∑k&gt;0npk−(n−mpk+mpk)Ans = \sum_{k&gt;0}\frac n {p^k}-(\frac{n-m}{p^k} + \frac{m}{p^...

2019-05-04 10:08:15 799

原创 GDOI2019赛前复习 & 赛后总结

去年的flag赛前复习回文树感觉自己并没有学过一样…第一次知道回文树的根应该建成一个环。无论是1做奇数根还是0做奇数根都没有关系。记得除了偶数根,不应该有其他fail等于奇数根就行。记得先求新点的fail再给last的转移赋值,这样不需要特判。1做奇数根:struct pam{ int c[N][26],fail[N],len[N]; char s[N]; int sz;...

2019-05-03 22:32:26 737

原创 常系数齐次递推 / 多项式取模

例题给定G(次数界3w左右),求F(x)=11−G(x)F(x)=\frac 1 {1-G(x)}F(x)=1−G(x)1​的第n项,保证G(x)[x0]=0G(x)[x^0]=0G(x)[x0]=0。n在1e9以上。有毛病毒瘤毒瘤毒瘤式子就是F(x)=1+F(x)G(x)F(x)=1+F(x)G(x)F(x)=1+F(x)G(x)这是什么意思呢其实就相当于一个齐次线性递推。f...

2019-05-01 21:50:05 792

原创 动态DP相关

小声bb去年做了保卫王国之后感觉自己会动态dp了,今天看下全都还给出题人了…省选前临急抱佛脚吧。动态dp是什么就是先给一个dp问题,然后修改里面的一些值 / 给出一些限制,要你快速求出新的dp答案。方法大概分三种:倍增(适用于无权值修改,只有限制的情况)树链剖分LCT其中树剖是比较不推荐的,太长了。但是树剖比较好理解,可以用这个来学。注意不要拘泥于原有的完整树形结构。为了...

2019-04-30 16:28:57 558

原创 jzoj6152. 【GDOI2019Day2模拟2019.4.29】Endless (倍增维护并查集,平方串)

对于长度为x的平方串,只需要每隔x做一个关键点,然后对相邻关键点做lcp和lcs就可以找出每一个平方串。sa或者hash+二分都是可以的找出平方串的区间,下面要实现的操作就是实现区间中x和x+le合并。用倍增维护一下并查集,开log个并查集,若x,y在第i个并查集里被并起来,意味着x..x+2i−1x..x+2^i-1x..x+2i−1与y..y+2i−1y..y+2^i-1y..y+2i...

2019-04-29 22:06:31 334

原创 KD-Tree中的矩形查询

简单模板题:6121. 【GDOI2019模拟2019.4.13】数据结构首先建树,一层按x二分,一层按y二分交替。用algorithm中的nth_element(开始,中间,结束(开),比较函数)就可以把点分成两边。但是两边是乱序的。这是线性的.然后把每个点控制的矩形区域更新上来,接下来就类似二维线段树了。据说询问一个矩阵是O(n0.5)O(n^{0.5})O(n0.5)的。证明不显然...

2019-04-13 22:49:41 969

原创 半平面交

存个板子首先加限制的四条边,然后先去平行,然后排极角序。每次加入一条边的时候,若队头两条线交点不在新半平面内,就出掉队尾。然后队头类似最后记得去掉尾部多加的半平面。jzoj6093#include <cstdio>#include <iostream>#include <cstring>#include <algorithm>#in...

2019-04-01 22:28:45 954

原创 多项式求ln,exp

迭代法求零点已知fff是一个多项式对多项式的函数,现要逼近f的零点,采用倍增法:假如要求A模xnx^nxn意义下的值,则预先求出A0为A模xn/2x^{n/2}xn/2意义下的值由泰勒展开,f(A)=f(A0)+f′(A0)(A−A0)f(A)=f(A0)+f&amp;#x27;(A0)(A-A0)f(A)=f(A0)+f′(A0)(A−A0)在模xnx^nxn意义下成立。令f(A)=0f(...

2019-02-26 12:08:59 903

原创 jzoj6025 【GDOI2019模拟2019.2.16】加农炮 (stern brocot树,类欧)

在stern brocot上走,任意分母为n的点,其到根路径的拐点最大是O(log n)级别的。(待证)于是开始二分,判定用类欧。式子这么推sum(a,b,c,n)sum(a,b,c,n)sum(a,b,c,n)=∑i=0n−1trunc((ax+b)/c)=\sum_{i=0}^{n-1}trunc((ax+b)/c)=∑i=0n−1​trunc((ax+b)/c)先保证a,b&amp;lt...

2019-02-17 08:32:43 440

原创 jzoj6022 【GDOI2019模拟2019.2.15】求和 (组合数取模)

很常见的推式子套路,有个组合数取模的黑科技:现在要求C(n,1),C(n,2)…C(n,m) (n&lt;=1e9,m&lt;=1e6)对一个大数p取模的结果,可以先将p分解质因数,然后将出现在p中的质因子单独计算指数以避免除法,其余的部分是与p互质的,直接使用逆元计算。(分解质因数时顺便求phi即可)当只有乘除的时候就可以使用这种规避逆元的方法,计算一次乘除的复杂度是质因子个数的。最后...

2019-02-15 20:17:58 427

原创 PKUWC&WC2019游记

概述经过了十天紧张刺激的腐…学习,终于能休息会了。这篇游记大概会简单地记录一下这两个冬令营的一些心得体会,然后总结自己的不足和需要提升的地方。PKUWC还是一如既往的下午一点半到六点,就时间安排来说个人认为不是特别好,特别是对有午睡习惯的同学。不如改成8~13?还是PKU的风格,六题计数期望DP地主斗等特别考验思维的题目,反而数据结构等毒瘤少见。有三个部分发挥不好:图论题,计算几何题,数...

2019-01-31 10:38:07 993

原创 jzoj5999 【WC2019模拟2019.1.14】选数 (FWT,容斥,平衡规划)

看到gcd,直接求也不好求,就可以先考虑一下反演。然后发现答案就是∑f(u)⋅ϕ\sum f(u)\cdot \phi∑f(u)⋅ϕ,f(u)是gcd是u的倍数的方案数。有个结论是∑d∣xμ(d)⋅(x/d)=ϕ(x)\sum_{d|x}\mu(d)\cdot(x/d)=\phi(x)∑d∣x​μ(d)⋅(x/d)=ϕ(x),就是一个容斥,最终只有与x无公共质因子的数会被算到。首先将所有数...

2019-01-16 07:26:42 271

原创 拆分 (网络流,构造)

可以构造使得答案就是下界值。调整方法是,在加入航线的过程中,保证每个点都先填满k种不同颜色,然后清零从头开始。具体地,对于一条航线(u,v),可以找到cx,cy是u,v的最小没有用过的颜色,假定cx&lt;cy,那么从v开始一定有一条cx,cy,cx,cy…的交错链。将其整体取反就可以把航线染成cx了。当一个点度数为k的时候,就可以清零(开新点)。每次也可以用上下界网络流来完成这个过程。...

2019-01-10 08:24:09 444

原创 jzoj5987 【WC2019模拟2019.1.4】仙人掌毒题 (动态圆方树维护仙人掌)

失智又被题目吓到了考虑树的情况,连通块数目就是总点数-存在的边。考虑仙人掌的情况,连通块数目就是总点数-存在的边+存在的环因为是0/1分开考虑,所以所谓存在的X就是要求相关联的点颜色一样。使用lct维护圆方树就可以了。算一个环都变黑的概率可以容斥,因为总环中点数是不超过n+m的,暴力就可以了。#include &lt;cstdio&gt;#include &lt;iostrea...

2019-01-05 15:34:26 602

原创 jzoj5983 多边形(组合数学)

啥将相邻点的距离表示为d1,d2…dm,并且和为n显然当di+d(i+1)&amp;gt;=(n+1)/2di+d(i+1)&amp;gt;=(n+1)/2di+d(i+1)&gt;=(n+1)/2时出现一个锐角。有两结论:k&gt;3时无解,k=3时只有m=3有答案。考虑求出这样的一组d,那么他对应着n个确定的多边形。 直接求不好求,不如容斥当k=3时,很容易算出解数就是m==3 ...

2019-01-03 18:44:38 270

原创 Samjia Graph (图计数, 多项式求逆 / 开根)

solution考虑一种计数的方案,g(n)=∑x+y=nC(n,x)⋅3xyg(n) = \sum_{x+y=n} C(n,x) \cdot 3^{xy}g(n)=∑x+y=n​C(n,x)⋅3xyx,y分别是左右的点数,3的几次方意思是黑 / 白 / 没有。容易发现,对于一个有k个连通块的真正的黑白图,会在g(n)中贡献2k2^k2k次。设f(n)f(n)f(n)表示大小为n的连通...

2018-12-27 22:48:14 267

原创 jzoj5970 space (Burnside,计数)

简单写一下每个点向他的快点连一条边。显然每个点一条入边一条出边(我居然没发现),形成了若干个轮换(环)。不难发现,答案就是n^4+轮换的个数,因为轮换之间需要2的代价跳。那么问题就变成了求环的个数。先对每一维求环,然后每一维枚举一个点,设其所在的各个环长度lcm为m,那么...

2018-12-02 08:33:09 307

空空如也

空空如也

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

TA关注的人

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