做题记录 25.5.1
\(\textcolor{blue}\odot\) CF1876D Lexichromatography
设值 \(x\) 分布在位置 \(s_1,s_2,\cdots,s_k\) 中,则对于任意 \(1\le i<k\),\(s_i\) 和 \(s_{i+1}\) 不同色
发现 \(p\) 的字典序大于 \(q\) 的字典序的方案数等于 \(p\) 的字典序小于 \(q\) 的字典序的方案数,由于总方案数为 \(2^c\),其中 \(c\) 为出现的数字种类数,因此求 \(p,q\) 相同的方案数即可得到答案
当存在一种数字出现奇数次时显然方案数为 \(0\)
否则对于同一种数字出现的位置,从左到右两两匹配,则每组匹配中恰好一个属于 \(p\),另一个属于 \(q\)
若存在两组匹配互相包含,显然方案数为 \(0\)
若匹配 \((a,c)\) 和 \((b,d)\) 相交,假定 \(a<b<c<d\),则 \(a,b\) 同色,\(c,d\) 同色,\(a,b\) 和 \(c,d\) 之间异色
因此从左到右扫描匹配对,将当前匹配对和与之有交的最后一个匹配对连边,则答案为 \(2^u\),其中 \(u\) 为连通块数量
时间复杂度 \(O(n\log n)\)
\(\textcolor{purple}\odot\) CF1879E Interactive Game with Coloring
显然对于任意树,从上到下每一层依次取 \(1,2,3\) 一定合法,因此答案上界为 \(3\)
答案为 \(1\) 当且仅当树为菊花,因此考虑何时答案取到 \(2\)
当不存在恰好一个儿子的结点时,显然可以 \(1\) 和 \(2\) 交错,到一个点时选择出边数量为 \(1\) 的颜色即可,答案可以取到 \(2\)
当存在恰好一个儿子的结点且这些结点的深度奇偶性相同,则除根外所有恰好一个儿子的结点向父亲的边的颜色相同,移动时若到达的点只有一个儿子则取这种颜色,否则按普通情况
实际上只需要保证根的每棵子树分别满足这一条件即可
综上:
- 为菊花时答案为 \(1\)
- 对于根的任意一个子树,其中所有恰好一个儿子的结点的深度奇偶性相同时,答案为 \(2\)
- 否则答案为 \(3\)
容易 \(O(n)\) 构造和移动