省選前學習記錄
阿新 • • 發佈:2022-03-02
CF1641D Two Arrays
-
\(\sum_{i=0}^{n}\binom{n}{i}(-1)^i = [n=0]\)
-
\(O(n2^m)\) 求一個模式串集合中有多少個模式串和文字串中的字元沒有交集 (保證任意串中不存在相同的字元。
可以用容斥,\(\sum_{X\subseteq A}\sum_{Y\subseteq B}[X=Y](-1)^{|X|-1} = [A\cap B \neq \varnothing]\)
關於左側的式子,可以把每個模式串的子串插入到 \(trie\) 上,然後對文字串的每個子串都查詢一下有多少個串和它相等就行。用 \(dfs\) 的方式列舉子串複雜度為 \(O(n2^m)\)
CF1641C Anonymity Is Important
- 在 \(B\) 條件下 \(A\) 成立,等價於在 \(A\) 條件下 \(B\) 成立
- 區間 \([l,r]\) 是否滿足條件等價於是否存在一段滿足條件的區間包含 \([l, r]\) (此條件保證在包含關係下有單調性,即若 \(A\) 滿足條件那麼 \(A\) 的子集一定滿足條件,若 \(A\) 不滿足條件,那麼 \(A\) 的超集一定不滿足條件)