做题记录 25.6.9
\(\textcolor{purple}\odot\) CF1771F Hossam and Range Minimum Query
令 \(f_{i,j}\) 为 \(a_{1\sim i}\) 中 \(j\) 出现次数的奇偶性,则区间 \([l,r]\) 的答案为 \(\text{lcp}(f_{l-1},f_r)+1\),可持久化线段树维护哈希即可,时间复杂度 \(O(n\log n+q\log n)\),空间复杂度 \(O(n\log n)\)
\(\textcolor{purple}\odot\) CF1773D Dominoes
黑白染色建立二分图,题目保证存在完美匹配,问题转化为求出有多少 \((x,y)\) 满足删去两点后图不存在完美匹配
删去两点在同一集合中时显然合法,答案为 \(2\binom{C}2\),其中 \(C\) 为左部点和右部点的点集大小,因此 \(2\binom C2>10^6\) 时直接输出 \(10^6\) 即可,之后只需要处理 \(2\binom C2\le 10^6\) 的情况
删去两点在不同集合时,枚举删去的左部点,求出最大流(显然等于 \(C-1\))后其对应删去的右部点为当前二分图最大匹配的必经点,在残量网络上 \(\text{bfs}\) 即可
直接网络流可做到 \(O(C^2\sqrt C)\),使用退流可做到 \(O(C^2)\)
\(\textcolor{purple}\odot\) CF1773G Game of Questions
发现一道题做多次不会影响结果
令 \(f_s\) 表示剩余的子集为 \(s\) 时获胜的概率,显然 \(f_s=0\;\;\text{if}~0\notin s\)
令 \(v_i\) 为会第 \(i\) 题的人的子集,令 \(g_{s,t}=\sum_i[s\cap v_i=t]\)
对于 \(1\in s\),显然 \(f_s=\frac1{n-g_{s,0}-g_{s,s}}\sum_t f_t g_{s,t}\),若 \(n-g_{s,0}-g_{s,s}=0\) 则 \(s\) 为最终状态,\(f_s=1\)
考虑如何计算 \(g\)
令 \(x\) 为任意一个不在 \(s\) 中的元素,则
枚举即可
时间复杂度 \(O(nm+3^m)\)
\(\textcolor{blue}\odot\) CF1771E Hossam and a Letter
预处理每个位置向上向下只经过 \(\text .\)、至多经过一次 \(\text m\) 所能走的最大距离,然后枚举 \(\text H\) 的水平线段即可
时间复杂度 \(O(nm^2)\)
\(\textcolor{purple}\odot\) CF1770E Koxia and Tree
对于每条边 \((u,v)\) 预处理 \((c_u,c_v)\),分别表示初始时两侧标记数量,令 \(p_u\) 表示点 \(u\) 存在标记的概率
按顺序依次考虑每条边 \((u,v)\)
若定向为 \(u\to v\),则 \(p_u(1-p_v)\) 的概率贡献为 \((c_u-1)(c_v+1)\),剩余情况贡献为 \(c_uc_v\)
定向为 \(u\gets v\) 同理
总贡献为
经过操作后显然 \(p_u=p_v\gets \frac12(p_u+p_v)\)
时间复杂度 \(O(n)\)
\(\textcolor{blue}\odot\) CF1768E Partial Sorting
答案上限显然为 \(3\)
答案为 \(0\) 显然只有一种方案,答案 \(\le 1\) 方案数为 \(2(2n)!-n!\),答案 \(\le 3\) 方案数显然为 \((3n)!\),考虑求出答案 \(\le 2\) 的方案数
答案 \(\le 2\) 当且仅当 \(1\sim n\) 在 \([1,2n]\) 中,或 \(2n+1\sim 3n\) 在 \([n+1,3n]\) 中
满足前者或满足后者的方案数都是 \(\binom{2n}nn!(2n)!\),考虑求出重复部分,即 \(1\sim n\) 在 \([1,2n]\) 中且 \(2n+1\sim 3n\) 在 \([n+1,3n]\) 中
枚举 \(1\sim n\) 中有 \(i\) 个在 \([n+1,2n]\),\(n-i\) 个在 \([1,n]\) 中,\([1,n]\) 中剩余 \(i\) 个位置放置 \(n+1\sim 2n\) 中的数,\([n+1,2n]\) 中剩余 \(2n-i\) 个位置中选出 \(n\) 个放置 \(2n+1\sim 3n\),剩余位置放置 \(n+1\sim 2n\),总方案数为 \(\binom ni\binom{n}{n-i}\binom{2n-i}n(n!)^3\)
时间复杂度 \(O(n)\)
\(\textcolor{purple}\odot\) CF1767E Algebra Flash
每种颜色建立一个点,选择一个点代表删除一种元素,则 \(c_i\) 和 \(c_{i+1}\) 对应的点之间连边,\(c_1\) 和 \(c_n\) 分别连自环(强制保留),问题转化为不超过 \(40\) 个点的最大权独立集问题,记忆化搜索即可,时间复杂度 \(O(n+2^{\frac m2})\)

浙公网安备 33010602011771号