12 2025 档案

摘要:这是一个二分图匹配的形式,转成最小割之后要求不存在两个异色点距离 \(\le L\) 且都没割掉。 考虑未被割掉点,贡献形如的是选若干点,异色点距离 \(>L\)。这个可以转化成确定黑点区间 \([l_i,r_i]\) 后,禁用 \([l_i-L,r_i+L]\) 的白点,然后前缀和优化成和 \(l 阅读全文
posted @ 2025-12-13 09:31 CJzdc 阅读(16) 评论(1) 推荐(2)
摘要:很厉害的 DS 题,记一下 qiuzx 的做法。 考虑到每次操作实际上只会增加 \(O(1)\) 个连续段,一个想法是对时间轴建线段树,在两个子节点已知时合并父节点,合并两个节点可以 \(O(len\log len)\) 解决,此处的总复杂度是 \(O(q\log^2 q)\) 的。 于是我们解决了 阅读全文
posted @ 2025-12-11 09:19 CJzdc 阅读(9) 评论(0) 推荐(0)
摘要:神仙题 阅读全文
posted @ 2025-12-10 17:10 CJzdc 阅读(12) 评论(0) 推荐(0)
摘要:考虑直接对于 \(b\) 进行刻画。 注意到,对于一个 \(i\),有 \(b_{b_i}=b_i\),考虑对于 \(b_x=x\) 的点 dp,称这些点为关键点。 令 \(f_{l,r}\) 表示现在考虑 \([l,r]\),且 \(l\) 是第 \(a_l\) 个选的位置。 转移如果 \(r\) 阅读全文
posted @ 2025-12-09 16:48 CJzdc 阅读(5) 评论(0) 推荐(0)
摘要:考虑怎么写暴力。首先把所有 \(a\) 都调整成 \(X\) 的超集。设调整后的数组 \(a'_i=b_i+X\),即 \(b_i\) 为 \(a'_i\) 扣掉 \(X\) 的部分。 此时,令 \(Y\) 为 \(b_i\) 的 \(\mathrm{AND}\) 和,那么我们还需要把 \(Y\) 阅读全文
posted @ 2025-12-05 09:01 CJzdc 阅读(16) 评论(0) 推荐(0)
摘要:\(a\) 可以重排,因此对于所有值 \(v\),其出现次数 \(c\) 将 \(n\) 划分为若干个子集。 考虑一个二分图,左部点是 \(n\) 的位,右部点是 \(y\) 的位,那么相当于对于每个左部点,在右部点选择一个集合连边。同时要求右部点的度数都要 \(\ge 1\)。此时每有一条边 \( 阅读全文
posted @ 2025-12-04 17:10 CJzdc 阅读(9) 评论(0) 推荐(1)
摘要:好题。 阅读全文
posted @ 2025-12-03 14:55 CJzdc 阅读(10) 评论(0) 推荐(0)
摘要:考虑如果确定了 \(a\),怎么去算 \(b\) 的方案数。 对于一次赋值 \(b_{p_i}\leftarrow p_i\),考虑钦定其为最后一次对 \(b_{a_{p_i}}\) 的修改,那么相当于把 \(a_{p_i}\) 锁定。 于是,如果当前 \(p_i=x\),那么我们可以决定是否把 \ 阅读全文
posted @ 2025-12-01 16:59 CJzdc 阅读(10) 评论(0) 推荐(0)
摘要:首先把 \(\prod a\) 拆开,对于一个操作,它会被若干个位置所钦定。考虑对于所有有效的操作 dp。 如果我们知道了一个操作覆盖的集合,那么操作范围一定包含集合的最小和最大值。因此我们只关心集合的左右端点。 考虑对这些区间扫描线。\(f_{i,S,j}\) 表示现在扫到 \(i\),\(i-m 阅读全文
posted @ 2025-12-01 10:29 CJzdc 阅读(14) 评论(0) 推荐(0)