做题记录 25.8.7
\(\textcolor{blue}\odot\) CF1609E William The Oblivious
用一颗线段树保存 \(s\),每个结点保存一个矩阵 \(\begin{bmatrix}A&AB&ABC\\ \infty&B&BC\\ \infty&\infty&C\end{bmatrix}\),\(A,B,C,AB,BC,ABC\) 分别表示令区间中不存在子序列 \(A/B/C/AB/BC/ABC\) 所需的最小修改次数,发现信息合并就是 \((\min,+)\) 矩乘
容易做到 \(O(q\log n)\)
\(\textcolor{purple}\odot\) CF1608E The Cells on the Paper
显然只需要考虑品字形和目字形即可
考虑它们的旋转,以及三种颜色的置换,一共有 \((2+4)\times 6!=36\) 种
预先对所有点排序,二分 \(k\),枚举每种情况,判定容易做到线性
总时间复杂度 \(O(n\log n)\)
\(\textcolor{blue}\odot\) CF1608D Dominoes
令 \(\text W\to 0\),\(\text B\to 1\),\(\text ?\to 2\),令 \(c_{i,j}\) 为 \(\overline{ij}\) 的数量
令 \(wl=\sum c_{0,\ast}\),\(wr=\sum c_{\ast,0}\),\(bl=\sum c_{1,\ast}\),\(br=\sum c_{\ast,1}\),\(ql=\sum c_{2,\ast}\),\(qr=\sum c_{\ast,2}\)
假如所有 \(\text ?\) 都确定了,则 \(c_{0\sim 1,0\sim 1}\) 合法当且仅当 \(c_{0,0}=c_{1,1}\),且 \(c_{0,1}>0\land c_{1,0}>0\) 时额外要求 \(c_{0,0}=c_{1,1}>0\)(对于 \(\overline{ij}\),\(i\) 向 \(\lnot j\) 连边,则要求连出的图存在欧拉回路,容易得出以上结论)
考虑求出 \(c_{0,0}=c_{1,1}\) 的方案数,然后减去 \(c_{0,1}>0\land c_{1,0}>0\land c_{0,0}=c_{1,1}=0\) 的方案数即为答案
对于前者,枚举 \(c_{0,0}=c_{1,1}=i\),此时 \(c_{1,0}=c_{0,1}=n-i\),贡献为 \(\binom {ql}{i-bl}\binom{qr}{n-i-br}\)
对于后者,进一步拆为 \(c_{0,0}=c_{1,1}=0\) 的方案数减去 \(c_{0,1}>0\land c_{1,0}=c_{0,0}=c_{1,1}=0\) 的方案数减去 \(c_{1,0}>0\land c_{0,1}=c_{0,0}=c_{1,1}=0\) 的方案数,第一项显然等于 \([c_{0,0}=c_{1,1}=0]2^{c_{2,2}}\)(此处的 \(c\) 为根据不完整的 \(s\) 计算出的),后面两项分别等于 \([wl=br=0]\) 和 \([wr=bl=0]\)
总时间复杂度 \(O(n)\)
\(\textcolor{blue}\odot\) CF1606D Red-Blue Matrix
将所有行按第一列的值升序排序后,显然是选择 \(n\) 行的一个前缀为蓝色,剩余的行为红色
行分割点有 \(n-1\) 种选择,列分割点有 \(m-1\) 种选择,总计 \((n-1)(m-1)\) 种选择,对于每个位置预处理左上 \(\max\),右上 \(\min\),左下 \(\min\),右下 \(\max\),即可 \(O(1)\) 判定
容易做到 \(O(\sum (n\log_n V+nm))\)
\(\textcolor{blue}\odot\) CF1605E Array Equalizer
令 \(c_i=a_i-b_i\),则转化为最终令 \(c\) 变为 \(0\)
令 \(b_1=x\),从 \(1\) 到 \(n\) 枚举 \(i\),对于所有 \(k>1\),令 \(c_{ik}\) 减去 \(c_i\),然后令操作次数加上 \(|c_i|\)
显然最终操作次数可以写为 \(\sum_{(k,b)}|kx+b|\)(其中 \(k\ge 0\))
令 \(bs=\sum_{(k,b)\mid k=0}|b|\),则答案为 \(bs-\sum_{(k,b)\mid \frac bk<-x}(kx+b)+\sum_{(k,b)\mid \frac bk>-x}(kx+b)\)
将二元组根据 \(\frac bk\) 排序,并计算其前缀和,单次询问容易做到 \(O(\log n)\)
总时间复杂度 \(O((n+q)\log n)\)
\(\textcolor{purple}\odot\) CF1603F October 18, 2017
\(x=0\) 时,相当于要求 \(a\) 中 \(n\) 个数线性无关,方案数显然为 \(\prod_{i=1}^n (2^k-2^{i-1})\)(枚举每个,选择第 \(i\) 个时不能在前 \(i-1\) 个张成的空间中,因此 \(2^{i-1}\) 个不能选),\(n>k\) 时答案为 \(0\),容易 \(O(k)\) 求出
\(x>0\) 时,相当于要求 \(x\) 不在 \(a\) 张成的空间内
可证答案为
容易做到 \(O(\sum(k\log V))\)

浙公网安备 33010602011771号