10 2021 档案
摘要:【模板】树同构([BJOI2015]树的同构) \(\text{Solution:}\) 由于月赛有一个和树同构相关的题目,所以来学一下树同构。 这里不用树哈希的做法,考虑用括号序列。 我们发现:当进入一个点的时候记录一个左括号,出去的时候记录一个右括号,这样会形成一个长度为 \(2n\) 的括号序
阅读全文
摘要:[SCOI2016]幸运数字 \(\text{Solution:}\) 这题是个板子。显然的思路就是直接用树剖线段树维护合并线性基,这样就可以做到 \(O(n\log ^4 n)\) 的复杂度。 这东西 十分卡常 ,所以代码里用了 fread,fwrite 等优化,以及: 合并线性基的时候,我们会发
阅读全文
摘要:#139. 树链剖分 \(\text{Solution:}\) 先不考虑换根,那其他的就很板子。 考虑换根的影响,首先对在路径上的操作没有影响,唯一有影响的就是子树操作。 考虑直接先在 \(root=1\) 的情况下树剖,然后直接在上面分类讨论。 如果当前根就是要修改的点,那就直接全局修改; 如果当
阅读全文
摘要:中国象棋 - 摆上马 题目大意 给定 \(n\times m\) 的棋盘,往棋盘上面摆马,问有多少种摆法可以让马互不攻击。马是中国象棋的马,是可以被阻挡攻击路线的,如题干图中所示。 题目解法 看到数据范围,首先想到的就是状压了。我们发现,马涉及的状态实际上是 前两列 ,所以我们需要存下前两列的状态。
阅读全文
摘要:A 只要不和我一样把样例玩错应该就不会否认答案随着 \(n\) 增大而增大的单调性…… 于是我们发现答案单调并且很容易用 set 直接维护 \(n=1\to n\) 的答案。对两边算出来直接计算取 \(\max\) 即可。 B 读好题。 发现转移是 \(S\) 不能同时在一个合法括号的两边。所以考虑
阅读全文
摘要:CF1599F Mars \(\text{My blog}\) \(\text{Solution:}\) 题目就是让求每次询问一个区间能否组成一个公差为 \(d\) 的等差数列。 首先我们可以算出一个等差数列的首项——求区间和然后逆推就好了。那么,我们如何判断一个区间可以组成这样一个等差数列? 考虑
阅读全文
摘要:同时作为 \(E1\) 题解了。 \(MyBlog\) 题目描述 给定 \(2^n-1\) 个节点的完全二叉树,每个点有六种颜色,颜色有互斥性质,求所有合法的二叉树染色方案。 Easy version 这个比较简单,但我也掉进坑里了)首先先手玩一下,看到样例 \(n=3\) 的时候数字就那么大,绝对
阅读全文
摘要:Acwing 235. 魔法珠 \(\text{Solution:}\) 其实思考下发现不好做之后就知道必须要 SG 函数了……拿简单题复习一下 SG 函数吧 顺便也碰到了一些细节 首先我们发现,每一个数字都会被拆分成若干其他数字,并且会被拿走。而且也容易证明这是一个公平组合游戏。那么 SG 函数在
阅读全文
摘要:Acwing228. 异或 \(\text{Solution:}\) 第一次见的套路 记录一下 首先观察到路径,而且 \(n\) 很大,往最短路方面想,但是一个异或最大值就直接把最短路给干掉了 考虑什么东西可以维护形如 选出一些数使得异或和最大 的问题?——线性基。 那么重新分析题目,我们被要求找到
阅读全文
摘要:[NOI2018] 屠龙勇士 \(\text{Solution:}\) 确实是送分题……但细节也确实多……找个好板子很重要 容易得出来就是求一堆形如 \(vx\equiv a_i(\bmod p_i)\) 的方程组,但有很多细节: 首先是,这没有保证模数互质,所以需要扩展中国剩余定理 其次,模数很大
阅读全文
摘要:CF338D GCD Table \(\text{Solution}\) 我们依次来考虑 \(i,j\) 需要满足的条件。 首先,既然满足所有 \(1\leq l\leq k\) 满足 \(\gcd(i,j+l-1)=a_l,\) 那么可以合理导出 \(\forall a_l,a_l|i\to \t
阅读全文
摘要:「JOISC 2018 Day 3」比太郎的聚会 \(\text{Solution:}\) 一定要看好数据范围!!! 从这题里面学到了太多…… 注意到连边一定是小点往大点连的,所以一定没有环。 询问总量是固定的,总输入量是 \(2\times 10^5\) 级别。 看到这里起码可以正常想题了…… 首
阅读全文
摘要:CF1320D Reachable Strings \(\text{Solution:}\) 先来发现操作的性质,发现其本质是一个对 \(0\) 进行的位移,而且位移前后 \(0\) 位置的奇偶性不变。 那么,我们发现,如果一个子串能变成另外一个,当且仅当其 \(0\) 组成的部位构造相同、奇偶性相
阅读全文
摘要:【清华集训2016】如何优雅地求和 \(\text{Solution:}\) \[ \sum_{k=0}^n f(k)\binom{n}{k}x^k (1-x)^{n-k} \\ =\sum_{j=0}^m a_j\sum_{k=0}^n k^i \binom{n}{k}x^k (1-x)^{n-k
阅读全文
摘要:CF1129C Morse Code \(\text{Solution:}\) 考虑直接 \(O(n^2)\) 的 \(dp.\) 如果没有重复的限制,那么有一个简单做法: 依次加入 \(i,\) 枚举所有后缀 \(j,\) 大力 \(dp\) 出方案数。 f[i][j]=Add(f[i][j],f
阅读全文
摘要:CF1408D Searchlights \(\text{Solution:}\) 经典模型(?) 来巩固一下 考虑移动的方案,必然是向上移动到某个等塔同一水平后再向右走。 那么,如果我们可以知道,在移动 \(x\) 步的情况下,所有海盗向右走的最短距离,那是不是就很好做了? 先考虑如何处理这个东西
阅读全文
摘要:由乃打扑克 \(\text{Solution:}\) 题目就是区间加,求区间第 \(k\) 小。这里没有用时间分治的做法。 考虑每次修改的时候,如果遇到散块就暴力重构,整块打标记。 询问的时候直接二分答案,整块里面用 lower_bound, 对于散块: 如果我们暴力做,复杂度是错误的,这样是根号外
阅读全文
摘要:A: 求一个排列满足 \(p_i>p_{i+1}\) 的数对大于 \(n\) 的排列数。 显然这玩意对称,直接 \(\frac{(2n)!}{2}\) #include<bits/stdc++.h> using namespace std; const int N=2e5+10; const int
阅读全文