摘要: 76.CF1967 Codeforces Round 942 (Div. 1) CF1967A CF1967B1 \[b\times \gcd(a,b)|a+b \to qi^2|(p+q)i \to qi|(p+q)\to q|p \to b|a \]反过来也能推到。 CF1967B2 \[a+b 阅读全文
posted @ 2024-05-09 07:11 蒟蒻orz 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 道路(road) 竞赛图三元环计数,答案为 \(C(n,3)-\sum_{i=1}^{n} C(du(i), 2)\)。 扫描线维护出度就好了。 图(graph) 考虑最优解是一个森林。 我们想到转到网络流维护。 尝试将图上点随机染色,白点连 \(S\),黑点连 \(T\),之间的边互连,这样网络流 阅读全文
posted @ 2024-04-08 13:41 蒟蒻orz 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 注:这篇文章里的图片都是截图在本地,所以没有上传的必要。/kk 注:这篇文章里的图片都是抄袭的/kk 注:这篇文章里的图片都是抄袭的/kk 注:这篇文章里的图片都是抄袭的/kk AT_arc165_d [ARC165D] Substring Comparison 考虑字典序的性质。 我们维护当前的 阅读全文
posted @ 2024-04-08 13:39 蒟蒻orz 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 48.AT_arc064_d 对于任意本原回文串,如果长度为奇数,那么它的任意循环位移均不是回文串;如果长度为偶数,恰有一个循环位移同样为回文串。 还有一个回文串的所有循环节都是回文串。 我们对于最小循环节计数,就有 \(f_i=k^{\lceil\frac{i}{2}\rceil}-\sum_{j 阅读全文
posted @ 2024-04-08 13:35 蒟蒻orz 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 包含口胡题。 1.[ARC171C] Swap on Tree 条件一:边集合相等。 条件二:满足对于每个点连向的边,出现相对顺序都相同的操作序列得出的结果相等。 必要:若点不满足条件,则一定有点被交换到其他子树去了。 充分: 则只需考虑每个点的度数,背包即可。 2.[AGC065C] Avoid 阅读全文
posted @ 2024-03-09 15:13 蒟蒻orz 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 考虑暴力做法:从后往前加入彩灯,并将包含这个灯的询问电流加上 cic_ici​,然后将电流 >si>s_i>si​ 的询问删除。 发现,若一个大的询问区间包含小的询问区间,则这个询问的答案不小于小的询问答案。 于是我们可以考虑先计算大区间的询问答案,则区间不存在包含关系,l,rl,rl,r 单增,那 阅读全文
posted @ 2024-02-11 12:29 蒟蒻orz 阅读(1) 评论(0) 推荐(0) 编辑
摘要: uoj #838. 龙门对决 给定一棵 nnn 个点的无根树,询问有多少连通子图满足其大小大于等于其最大点独立集的两倍。 要求树的最大独立集,考虑到树是二分图,则最大独立集等于点数 −-− 最大匹配,即该图存在完美匹配。 考虑叶子,它只能与父亲一组,且不能有兄弟节点,这样每次删叶子及其父亲,可以得到 阅读全文
posted @ 2024-02-10 20:44 蒟蒻orz 阅读(1) 评论(0) 推荐(0) 编辑
摘要: AT_joisc2017_d 切符の手配 (Arranging Tickets) 有点省选的味道了。 考虑先定向 min⁡(ai,bi)→max⁡(ai,bi)\min(a_i,b_i) \to \max(a_i,b_i)min(ai​,bi​)→max(ai​,bi​)。 再考虑翻转,当两个区间无 阅读全文
posted @ 2024-01-15 20:20 蒟蒻orz 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 套路地考虑 wqs 二分,记 f(x)f(x)f(x) 表示分成 xxx 段,≥s\ge s≥s 的段数的最大值。 但是发现,≥s\ge s≥s 的段可以拼上旁边一个小段,构成一段坐标系上的横条,所以 f(x)f(x)f(x) 其实并不是凸的。 由上的性质,可以知道,答案关于 kkk 具有单调性,我 阅读全文
posted @ 2023-12-14 13:48 蒟蒻orz 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 将取膜去掉,描述满足条件的序列 BBB: ∀i,Bi≥Ai\forall i,B_i\ge A_i∀i,Bi​≥Ai​; Bi mod nB_i \bmod nBi​modn 两两不同; 令 s=∑Bi−Ais=\sum B_i-A_is=∑Bi​−Ai​,则 s≡0(modm)s \equiv 0 阅读全文
posted @ 2023-12-11 22:01 蒟蒻orz 阅读(1) 评论(0) 推荐(0) 编辑
摘要: P9917 「RiOI-03」网格 行列染色,求红色网格周长。 矩阵是凸的,定义贡献,若 (x,y)(x,y)(x,y) 为红色,(x+1,y)(x+1,y)(x+1,y) 为白色,则竖直范围内有 222 贡献;水平同理。 动态二维数点非常麻烦。 考虑到单行单列染色,记录行列最后染的颜色以及染色时间 阅读全文
posted @ 2023-12-11 14:08 蒟蒻orz 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 初始想法肯定是构造 k=0k=0k=0 的矩阵。 1 25 21 2 22 3 23 4 24 5 然后 k=1k=1k=1,就直接交换行列。 k=2k=2k=2,就根据根据初始矩阵两个数是否在同一集合和最后要求两个数是否在同一集合进行合并或分拆。 合并,只需将两个数交换到相邻行,然后进行合并,分讨 阅读全文
posted @ 2023-11-09 12:49 蒟蒻orz 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 考虑到 x≤40x\le 40x≤40,肯定是要从这上面考虑的。 我们把存在性容斥掉,答案为总情况数减去所有数在 [0,x)[0,x)[0,x) 的情况数再减去所有数在 (x+k−1,+∞)(x+k-1,+\infty)(x+k−1,+∞) 的情况。 考虑第一部分和第三部分一起看。 绝对值转成差分序 阅读全文
posted @ 2023-11-07 21:59 蒟蒻orz 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 对于每个权值找出他出现的极长区间,总数是 O(40n)\mathcal O(40n)O(40n) 的。 然后我们判断一个区间是否有解,每个限制形如一个同余式,发现模数 ≤40\leq 40≤40,那么两两判断裴蜀定理即可。 考虑双指针,找到最长合法区间,对每个模数记录出现位置及余数,这很好做。 阅读全文
posted @ 2023-11-05 12:09 蒟蒻orz 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 什么神仙。 将期望转到局面上。 发现期望相当于每个还可以操作的局面出现的概率之和。 于是我们找到局面,算概率即可。 找到树上一个大小为 aaa 的子图,满足 a>ka>ka>k,如果有 bbb 个之外的点与之相连。 我们考虑将操作的序列看成排列,那么出现这种局面的概率为 a!b!(a+b)!\fra 阅读全文
posted @ 2023-11-05 12:08 蒟蒻orz 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 考虑字典序的性质。 我们维护当前的 ai,cia_i,c_iai​,ci​ 表示判断 aia_iai​ 是否 <ci<c_i<ci​,连边。 tarjan 判环,如果是一个环,说明环上所有点都相等。 注意,我们连边是对两个点的环进行连边。 对于一个限制,如果当前的 ai,cia_i,c_iai​,c 阅读全文
posted @ 2023-11-05 12:08 蒟蒻orz 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 有 gcd⁡(xa−1,xb−1)=xgcd⁡(a,b)−1\gcd(x^a-1,x^b-1)=x^{\gcd(a,b)}-1gcd(xa−1,xb−1)=xgcd(a,b)−1 和 lcm⁡(S)=∏T⊂Sgcd⁡(T)(−1)∣T∣−1\operatorname{lcm}(S)=\prod_{T 阅读全文
posted @ 2023-11-05 12:06 蒟蒻orz 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 钦定最小值 lll。 方案数就是 [l,r]−[l+1,r][l,r]-[l+1,r][l,r]−[l+1,r],就是容斥掉没有最小值的情况。 现在就是树上的链的乘积,容易想到树形 DP。 发现值域上端点之间的区间每个点的一次函数不变。 对每一段,拉格朗日插值算前缀和就行了。 阅读全文
posted @ 2023-11-05 12:05 蒟蒻orz 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 考虑构造出一个权值为 xxx 的数要多少棵叶子,记为 cxc_xcx​。 则 cx=∑j=0x−1cj+1c_x=\sum_{j=0}^{x-1}c_j+1cx​=∑j=0x−1​cj​+1,则 cx=2xc_x=2^{x}cx​=2x。 所以权值的值域是 log⁡n\log nlogn 的。 考虑 阅读全文
posted @ 2023-11-05 12:05 蒟蒻orz 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 搞出平均数 vvv,相当于每个数都得是 vvv,将 ai−v→aia_i-v\to a_iai​−v→ai​,则变成每个数都得为 000,且 ai≥−va_i \ge -vai​≥−v。 一个区间能均摊,当且仅当区间和为 000。 考虑最小步数,发现上界是 ⌈len−1k−1⌉\lceil\frac 阅读全文
posted @ 2023-11-05 12:02 蒟蒻orz 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 跟 CF1889C1 很像。 多次询问,我们考虑将每个段的端点标记,将值域分成若干个段。 我们如果可以求出前缀段通过删除能得到的最多空点个数,由于每一段要么全空,要么全被覆盖,所以我们可以二分从而求出答案。 扫描线,找到被覆盖 ≤2\le 2≤2 的段,维护到每段区间末尾为止空点的长度 aia_ia 阅读全文
posted @ 2023-11-05 12:01 蒟蒻orz 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 首先对于两个点 (u,v)(u,v)(u,v) 的合并,发现是每 gcd⁡(au,av)\gcd(a_u,a_v)gcd(au​,av​) 个分成一段。 然后点 uuu 的每一段都会跟点 vvv 的每一段取或。 在强联通分量内的,两两都会贡献,于是计算其中所有点的 gcd⁡\gcdgcd,按这个数将 阅读全文
posted @ 2023-11-05 12:01 蒟蒻orz 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 发现操作并不会使一个存在的二进制位消失,所以最后的答案为区间的或。 令这个数为 mxmxmx,首先序列必须存在 mxmxmx。 注意到当 mxmxmx 出现次数 ≥2\ge 2≥2 时,必然有解,可以通过先将这两个数弄成相邻的再左右扩展得到。 现在讨论 mxmxmx 出现次数为 111 的情况,我们 阅读全文
posted @ 2023-11-05 12:00 蒟蒻orz 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 当每个栈只有一个元素时,我们连接 i→pii\to p_ii→pi​,pip_ipi​ 为第 iii 个栈的栈顶。 现在是一棵内向基环树了。 此时询问的答案是每个点对应的树的处在环上的根。 回到原问题,其实我们不断消环,即找到环,将环上的栈顶弹出,并新建连边 i→pii\to p_ii→pi​,并维 阅读全文
posted @ 2023-11-05 11:58 蒟蒻orz 阅读(0) 评论(0) 推荐(0) 编辑
摘要: 排列的单调且连续的区间一定互不相交,且由 aaa 可以推出这些区间。 如果 a={3,3,3,1,1,1}a=\{3,3,3,1,1,1\}a={3,3,3,1,1,1},那么区间就是 {[1,3],[4,4],[5,5],[6,6]}\{[1,3],[4,4],[5,5],[6,6]\}{[1,3 阅读全文
posted @ 2023-11-05 11:56 蒟蒻orz 阅读(0) 评论(0) 推荐(0) 编辑