摘要:
钦定最小值 lll。 方案数就是 [l,r]−[l+1,r][l,r]-[l+1,r][l,r]−[l+1,r],就是容斥掉没有最小值的情况。 现在就是树上的链的乘积,容易想到树形 DP。 发现值域上端点之间的区间每个点的一次函数不变。 对每一段,拉格朗日插值算前缀和就行了。 阅读全文
摘要:
考虑构造出一个权值为 xxx 的数要多少棵叶子,记为 cxc_xcx。 则 cx=∑j=0x−1cj+1c_x=\sum_{j=0}^{x-1}c_j+1cx=∑j=0x−1cj+1,则 cx=2xc_x=2^{x}cx=2x。 所以权值的值域是 logn\log nlogn 的。 考虑 阅读全文
摘要:
搞出平均数 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 阅读全文
摘要:
跟 CF1889C1 很像。 多次询问,我们考虑将每个段的端点标记,将值域分成若干个段。 我们如果可以求出前缀段通过删除能得到的最多空点个数,由于每一段要么全空,要么全被覆盖,所以我们可以二分从而求出答案。 扫描线,找到被覆盖 ≤2\le 2≤2 的段,维护到每段区间末尾为止空点的长度 aia_ia 阅读全文
摘要:
首先对于两个点 (u,v)(u,v)(u,v) 的合并,发现是每 gcd(au,av)\gcd(a_u,a_v)gcd(au,av) 个分成一段。 然后点 uuu 的每一段都会跟点 vvv 的每一段取或。 在强联通分量内的,两两都会贡献,于是计算其中所有点的 gcd\gcdgcd,按这个数将 阅读全文
摘要:
发现操作并不会使一个存在的二进制位消失,所以最后的答案为区间的或。 令这个数为 mxmxmx,首先序列必须存在 mxmxmx。 注意到当 mxmxmx 出现次数 ≥2\ge 2≥2 时,必然有解,可以通过先将这两个数弄成相邻的再左右扩展得到。 现在讨论 mxmxmx 出现次数为 111 的情况,我们 阅读全文
摘要:
当每个栈只有一个元素时,我们连接 i→pii\to p_ii→pi,pip_ipi 为第 iii 个栈的栈顶。 现在是一棵内向基环树了。 此时询问的答案是每个点对应的树的处在环上的根。 回到原问题,其实我们不断消环,即找到环,将环上的栈顶弹出,并新建连边 i→pii\to p_ii→pi,并维 阅读全文
摘要:
排列的单调且连续的区间一定互不相交,且由 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 阅读全文
摘要:
先暴力贪心。 设 fu,0/1f_{u,0/1}fu,0/1 分别表示是否删除 uuu 和父亲之间的边,子树内的最小代价。 我们要满足的就是 uuu 被删除的边数 kkk 满足 duu−k≤xdu_u-k \le xduu−k≤x。 这下每个 vvv,不是选 w+fv,1w+f_{v,1}w+f 阅读全文
摘要:
发现同颜色最远点对一定有一点在直径 SSS 上。 这下找到直径,算每个点到直径的两种距离。 然后枚举最远点对长度 ddd,根据两种距离跟 ddd 的大小关系,我们可以知道一个点选的方案数。 然后我们考虑容斥。 记答案为 ∑wifi\sum w_if_i∑wifi 的形式,表示最远点对为 wiw_ 阅读全文