该文被密码保护。 阅读全文
posted @ 2023-08-18 21:24 CountingGroup 阅读(0) 评论(0) 推荐(0)
摘要: ~~你说我一个连线性基都不会的人怎么可能走的远,我跟你说我也是这么想的,但是你先别急。~~ # 一、线性基 OI 中常用~~全部~~的就是 $2$ 进制下的异或线性基。 线性基就是可以把一个集合里的数转化成一组基,使得这组基里所有 xor 出来的结果于原集合 xor 出来的结果完全一致。 这是一个线 阅读全文
posted @ 2023-08-15 19:06 CountingGroup 阅读(59) 评论(0) 推荐(0)
摘要: # 一、一些定义 注:以下定义 **并非** 严谨定义,只是便于理解。 - $P(A)$:事件 $A$ 发生的概率。 - $E(X)$:随机变量 $X$ 的期望值,有公式 $E(X) = \displaystyle \sum_{w}w \times P(X = w)$。 - 独立事件:两个事件 $A 阅读全文
posted @ 2023-08-13 21:38 CountingGroup 阅读(89) 评论(0) 推荐(0)
摘要: # A1. Dual (Easy Version) https://codeforces.com/contest/1854/problem/A1 ## 题意 给定一个长度为 $n$ 的序列 $a_1, a_2, \dots, a_n$,你可以做以下操作: - 选定两个下标 $i, j(1 \leq 阅读全文
posted @ 2023-07-30 11:33 CountingGroup 阅读(252) 评论(0) 推荐(1)
摘要: https://codeforces.com/contest/1852/problems # A. Ntarsis' Set https://codeforces.com/contest/1852/problem/A ![image](https://img2023.cnblogs.com/blog 阅读全文
posted @ 2023-07-24 17:23 CountingGroup 阅读(102) 评论(0) 推荐(0)
摘要: # 一、LCA ```cpp struct LCAns { struct edge {int to, nxt;} e[N = 0; -- j) {if (d[dp[u][j]] >= d[v]) u = dp[u][j];} if (u == v) return u; for (int j = lg 阅读全文
posted @ 2023-07-22 17:56 CountingGroup 阅读(26) 评论(0) 推荐(0)
摘要: 一、2-SAT 2-SAT 问题是给定 \(n\) 个变量 \(x_1, x_2, \dots, x_n\),取值只有 \(0\) 或 \(1\),然后这些变量要满足一些条件,比如:如果 \(x_1 = 1\) 那么 \(x_2 = 0\) 之类的。 然后我们要解决的问题就是判定是否存在一组 \(( 阅读全文
posted @ 2023-07-16 15:54 CountingGroup 阅读(22) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2023-07-16 11:25 CountingGroup 阅读(18) 评论(0) 推荐(0)
摘要: # 一、定义 在 **无向连通图** $G = (V, E)$ 中,若存在一个点 $u(u \in V)$ 使得删掉点 $u$ 及其相连的边,会使原图不连通,就称 $u$ 是原图的一个 **割点 (cut vertex)**;若存在一条边 $(u, v)((u, v) \in E)$ 满足删掉 $( 阅读全文
posted @ 2023-07-11 21:01 CountingGroup 阅读(53) 评论(0) 推荐(0)
摘要: # 一、启发式合并 启发式合并多用于合并两个集合,现在有这样一个问题: 现在给定 $n$ 个集合,第 $i$ 个集合初始只有 $\{i\}$,要支持集合的合并操作。 如果我们暴力合并,时间复杂度会是 $O(n^2)$ 的。 参考并查集的按秩合并,考虑将小的集合合并到大的集合上。 考虑计算时间复杂度, 阅读全文
posted @ 2023-07-09 09:28 CountingGroup 阅读(123) 评论(0) 推荐(0)