随笔分类 -  codeforces

1 2 3 4 5 ··· 7 下一页
摘要:对于一个元素,注意到其不合法当且仅当满足以下条件之一: - 自身、同行比其小、同列比其大 的元素均未选 - 自身、同行比其大、同列比其小 的元素均未选 将同行同列值相邻的元素连边,每个条件中的元素即构成一条从$1$到$n$的链 另外,若某行/某列元素均未选,也会产生一条从$1$到$n$的链 换言之, 阅读全文
posted @ 2023-06-11 13:33 PYWBKTDA 阅读(129) 评论(0) 推荐(0)
摘要:考虑长度为$3$的区间,即$\forall i\in [2,n),a_{i}<a_{i-1},a_{i+1}$或$a_{i}>a_{i-1},a_{i+1}$ 不妨假设$a_{1}<a_{2}$,则其余部分即形如$a_{1}<a_{2}>a_{3}<...a_{n}$ 考虑长度为$5$的区间,即$\ 阅读全文
posted @ 2023-03-05 22:38 PYWBKTDA 阅读(123) 评论(0) 推荐(1)
摘要:显然每个点双独立,不妨分别考虑(特判两点一边的情况): 必要条件1:任意两点间不存在三条长度$\ge 2$且两两不交的简单路径 若存在,记点集分别为$\{a_{i}\},\{b_{i}\}$和$\{c_{i}\}$,用$[x_{1}<_{x_{2}}x_{3}]$表示"方向" 根据抽屉原理,存在两条 阅读全文
posted @ 2022-07-28 10:07 PYWBKTDA 阅读(122) 评论(0) 推荐(0)
摘要:二分枚举答案,并考虑如下贪心: 从左到右依次选择区间,并维护未选区间的"右边界" 记当前位置为$l$,右边界$\le r$的未选区间数为$cnt_{l,r}$(其中$r\in [l,n]$) 取最小的$r$满足$cnt_{l,r}=|[l,r]|$,将这$cnt_{l,r}$个区间中右端点最小的填在 阅读全文
posted @ 2022-07-08 15:52 PYWBKTDA 阅读(135) 评论(0) 推荐(0)
摘要:考虑分治,分别求出左侧后缀和右侧前缀的直径,即需将两者两两合并: 将直径以长度和中心点(将边拆点,使长度为偶数)的方式描述,分别记为$d$和$u$ 此时,对于$(d_{1},u_{1})$和$(d_{2},u_{2})$,合并后的直径长度即$\max\{d_{1},d_{2},\frac{d_{1} 阅读全文
posted @ 2022-06-29 08:38 PYWBKTDA 阅读(75) 评论(0) 推荐(0)
摘要:对于$i\in [1,n)$,记$x_{i}$表示经过$(i,r_{i})$的次数,根据出入度平衡,不难得到$$2x_{i}-[s_{i}=R]+[i=k]=\sum_{r_{j}=i}x_{j}+\sum_{b_{j}=i}(x_{j}-[s_{j}=R])+[i=1]$$根据这$n-1$个方程解 阅读全文
posted @ 2022-06-10 12:04 PYWBKTDA 阅读(126) 评论(0) 推荐(0)
摘要:记$f(i)$表示时刻$i$时着火的格子数,则答案即$t\cdot f(t)-\sum_{i=0}^{t-1}f(i)$ 关于$f(i)$,即对所有点为中心、边长为$2i+1$​的矩形求并,容斥可得$$f(i)=\sum_{S\subseteq [1,n],S\ne \empty}(-1)^{|S| 阅读全文
posted @ 2022-05-01 17:36 PYWBKTDA 阅读(145) 评论(0) 推荐(3)
摘要:结论:若答案不为$-1$,则答案$\le 4$ 对$s[l,r]$中是否存在相同字符分类讨论: 1.若$s[l,r]$中字符各不相同,显然答案为$-1$,与假设矛盾 2.若$s[l,r]$中存在相同字符,在其中两个字符旁划分,显然合法且答案$\le 4$ 考虑依次判定答案能否为1、2、3或4,具体如 阅读全文
posted @ 2022-04-07 21:00 PYWBKTDA 阅读(75) 评论(0) 推荐(0)
摘要:分析条件,不难发现仅有以下两类边: 1.若两区间严格相交(有公共段)且不相互包含,则两区间之间有双向边 2.若两区间相互包含,则小区间向大区间有单向边 对于第1类边,由于区间长度严格递增,可以通过线段树+并查集维护 具体的,1操作时在(线段树)区间$(l,r)$上加入该点,并与在$l$和$r$处已加 阅读全文
posted @ 2022-03-21 18:40 PYWBKTDA 阅读(109) 评论(0) 推荐(0)
摘要:将序列分块,对每一个块维护以下信息: 1.块内的最大值$\max$和区间减的懒标记 2.存在的权值(包含即可)以及对应元素的链表(首尾、长度) 对于散块修改/询问,可以利用2重构序列,即可$o(\sqrt{n})$修改/询问 对于整块修改,注意到最大值单调不降,因此在$o(\Delta \max)$ 阅读全文
posted @ 2022-03-19 13:20 PYWBKTDA 阅读(158) 评论(0) 推荐(0)
摘要:若原序列众数不唯一,显然答案即为$n$,不妨特判此类情况 结论:记$x$为原序列的众数,则$x$也为答案序列的众数 反证法,假设$x$不是答案序列的众数,则不断延长答案序列直至$x$是其众数 不难发现:这样的时刻必然存在,且此时众数不唯一,即与答案的最长性矛盾 进一步的,对答案序列的众数出现次数分类 阅读全文
posted @ 2022-03-12 10:32 PYWBKTDA 阅读(65) 评论(0) 推荐(0)
摘要:性质1:对$i$操作后,$a_{i}+a_{i+1}$的值不变 性质2:若初始$a_{i+1}-a_{i}\le b_{i}$,则最终$a_{i+1}-a_{i}=b_{i}$ 换言之,不断合并$a_{i+1}-a_{i}\le b_{i}$,对于合并后的每一段,根据总和和差值即可解出 在此基础上, 阅读全文
posted @ 2022-03-11 16:47 PYWBKTDA 阅读(69) 评论(0) 推荐(0)
摘要:将所有$a_{i}$在二进制下展开,得到一个$n\times m$的01矩阵 对该矩阵做高斯消元(显然不影响结果),并要求得到如下的形式$$\left|\begin{array}{ll}1&0&0&\cdots&0&\cdots\\0&1&0&\cdots&0&\cdots\\0&0&1&\cdot 阅读全文
posted @ 2022-02-27 15:22 PYWBKTDA 阅读(79) 评论(0) 推荐(0)
摘要:记$cnt(x)$为$x$在二进制下1的个数,构造$A_{i}=4^{cnt(i)}a_{i},B_{j}=4^{cnt(j)}b_{j}$,将两者FWT得到$C_{k}=\sum_{i|j=k}A_{i}B_{j}$ 注意到$i\&j=0\iff cnt(i)+cnt(j)\le cnt(k)$( 阅读全文
posted @ 2022-02-22 16:19 PYWBKTDA 阅读(59) 评论(0) 推荐(0)
摘要:记$l=a+b,P_{i}$表示$i$是否被选入$S$,则有以下结论—— 结论1:若$P_{i}=P_{i+l}$且$S_{0}=\{i\mid 1\le i\le l,P_{i}=1\}$合法,则$S$也合法 反证法,若存在$x,y\in S$使得$|x-y|=a$或$b$,不妨假设$x<y$ 设 阅读全文
posted @ 2022-02-22 16:12 PYWBKTDA 阅读(67) 评论(0) 推荐(0)
摘要:对于字符串$s_{i}$,考虑(作为$s_{i}$的子串)与$s_{i}$有贡献的$s_{j}$ 枚举$s_{i}$的前缀$t$,考虑所有是$t$后缀的$s_{j}$,显然仅有其中最长的可能有贡献 建立ac自动机,那么$s_{j}$即该前缀跳fail指针时第一个结束节点,可以预处理出 同时,注意到$ 阅读全文
posted @ 2022-02-14 19:09 PYWBKTDA 阅读(73) 评论(0) 推荐(0)
摘要:记边集为$E$,新建点$0$向$[1,n]$连边$,n+1$从$[1,n]$连边,以此确定起点和终点 若初始$\forall 0\le i\le n,(i,i+1)\in E$,显然答案即${n\choose 2}$,不妨特判此类情况 此时考虑加入$(x,y)$后能否合法,不难证明路径必然为以下形式 阅读全文
posted @ 2022-02-05 20:36 PYWBKTDA 阅读(74) 评论(0) 推荐(0)
摘要:为了方便,定义0区间初始左端点所在的编号为0,其余位置顺时针依次为$[1,nm)$ 考虑对0区间顺时针旋转,记$s_{i}$为0区间左端点旋转到$i$时的答案(约定$s_{i+n}=s_{i}$) 性质1:若$s_{i}-s_{i-1}=1$且$s_{i+1}-s_{i}\ne 1$(其中$0\le 阅读全文
posted @ 2022-01-15 11:52 PYWBKTDA 阅读(155) 评论(0) 推荐(0)
摘要:考虑所有极长的0,对其长度分类讨论—— 1.若其长度为$2m+1$,总是将首/尾与相邻的非0元素配对,其余元素配成$m$对 同时,若首尾中某一个元素对应的$k$已经出现,那么必然与另一个配对 2.若其长度为$2m$,总是配成$m$对或将首/尾均与相邻的非0元素配对,其余元素配成$m-1$对 同时,若 阅读全文
posted @ 2022-01-14 15:21 PYWBKTDA 阅读(119) 评论(0) 推荐(0)
摘要:用二元组$A_{i}=(cycle_{i},precycle_{i})$来描述点$i$,则确定$A_{i}$后有解当且仅当: 设$cnt_{(l,h)}$为$A_{i}=(l,h)$的点数量,则$\forall l\ge 1,l\mid cnt_{(l,0)}$且$0\le j\le h,cnt_{ 阅读全文
posted @ 2022-01-08 22:17 PYWBKTDA 阅读(59) 评论(0) 推荐(0)

1 2 3 4 5 ··· 7 下一页