摘要:
我是 laijinyi,一名来自浙江省,杭州市的高一菜鸡 \(\texttt{oier}\)。 之后会在这里记录一些学习笔记和练习笔记。 请不要发无意义评论啊,无意义评论都会被删除 若看到博客代码块渲染不正常,刷新几下即可 博客标有的难度是如何定的? Easy :我是喝喝粥,我一眼秒了,我觉得这题没 阅读全文
摘要:
前言 人生第一次写游记(? 前几年一直不知道在干什么,有一年甚至tg1=pj2=,非常幽默。 正文 省流:J100+100+100+100,S100+100+100+44 J:后两个小时写了个 2048 玩,玩到了 1024,非常的闲。 S:先是两个小时解决前 3 题,T4 你两个小时能秒我? 做了 阅读全文
摘要:
有些内容因为机房电脑死机而丢失,这里标记为 TODO 根式指数和 Statement 求 \[ 2^m\sum_{\sum c_i=n,c_i\ge 0}\dfrac{(2n)!}{\prod(2c_i)!}\prod_{i=1}^ma_i^{c_i} \](若 \(n\bmod 2=1\),答案为 阅读全文
摘要:
这篇博客教你如何使用公式,套路地解决一类期望题 受 tommymio 启发,总结了一下 前置知识:\(\mathrm E[X+Y]=\mathrm E[X]+\mathrm E[Y]\),其中 \(X,Y\) 可以有依赖关系。 证明 OI Wiki 上有。 例题 CF280C Game on Tre 阅读全文
摘要:
增广路:从一个未匹配点出发,交替经过非匹配边、匹配边的路径,到达另一个未匹配点, 这一条路径叫做增广路。 以下省略绝对值符号,表示“集合大小” 最小点覆盖集 = 最大匹配数 最大点独立集 = 顶点总数 - 最大匹配数 最小边覆盖集 = 顶点总数 - 最大匹配数(无孤立点) DAG 最小路径覆盖 = 阅读全文
摘要:
我是口胡大王 允许负流量有上下界的源-汇最大流(已实现) 连 \(T\to S\) 上界 \(\inf\),下界 \(-\inf\) 的边 无源汇可行流 \(\to\) 有源汇最大流,注意到此时已经没有负容量了;找到此时 \(T\to S\) 边的流量 删 \(s,t\) 点、\(T\to S\) 阅读全文
摘要:
暴力 int vis[N], lst[N]; ll dis[N], flow[N]; int SPFA() { rep(i, 1, n) dis[i] = INF; queue<int> q; q.push(s), dis[s] = 0, flow[s] = INF; while (!q.empty 阅读全文
摘要:
好久以前的了。 我:08 08 CF1955H 塔防游戏,游戏有 \(n\times m\) 的地图,地图上已经有 \(k\) 座塔,并给出敌人从 \((1,1)\) 移动到 \((n,m)\) 的路径,敌人每秒移动一格,恰好遍历完这个路径;一秒内若敌人在 \((x,y)\),而一个塔 \(i\) 阅读全文
摘要:
好久以前的了。 我的题是 10 10 两棵根为 1 的树,一次可以删一个点、把所有儿子连到它的父亲,问最少操作次数使两棵树一样,\(n\le40\) 03 对序列 \(a\),定义一次变换为先让 \(\displaystyle s_k=\left(\sum_{i=k-\text{lowbit}(k) 阅读全文
摘要:
好久以前的了。 T2 sb 模拟 T5 \(n\times n(n\le2\cdot10^5)\) 的表格,每列一个房子,你要给出一个排房子的方案,使得 \(\forall i\) 房子,\(\exists j\) 房子使两个房子的曼哈顿距离 \(=a_i\),保证 \(a_i\le n\). T8 阅读全文
摘要:
H4.2.1.8. 多项式乘幂函数之和2 \(n,k\) 都是给定数,没什么区别 记 \(S_k=\sum_{i=1}^ni^kp^i\) \(p=1\) 时 \(S_k\in\Theta(n^{k+1})\) \(p<1\) 时 \[ \begin{aligned} (1-p)S_k&=\sum_ 阅读全文
摘要:
Q6.1.3.3 区间整除 题意:区间加,区间整除,区间和,区间最小值. Sol 1 区间整除时若当前区间 \(\max=\min\),改成区间覆盖,否则继续 复杂度玄学 Sol 2 有一波性质分析: 发现 \(\left\lfloor\dfrac xk\right\rfloor-\left\lfl 阅读全文
摘要:
T1 有形如下分形 0 1 0 2 0 1 0 3 1 1 2 2 1 1 3 3 0 2 0 2 0 3 0 3 2 2 2 2 3 3 3 3 0 1 0 3 0 1 0 3 1 1 3 3 1 1 3 3 0 3 0 3 0 3 0 3 3 3 3 3 3 3 3 3 输出他. Sol 略. 阅读全文
摘要:
Boruvka 每一轮操作,对于每个点来说,让他和“最近的与他有连边且还未连通的点”相连。 最多 \(\log n\) 轮,每轮 \(O(n\cdot p)\),\(p\) 为找“最近的与他有连边且还未连通的点”的复杂度。 \(O(np\log n)\) Kruskal 重构树 设从小到大加边,性质 阅读全文
摘要:
回顾一道题 阅读全文
摘要:
Statement 区间涂颜色 区间颜色数 Solution \(O(\text{polysqrt})\) 略。 \(O(\text{polylog})\) 颜色段均摊有两层含义: 随机数据下:任意时刻的颜色段个数期望 \(O(\log n)\) 非随机数据下:每次推平时访问的颜色段个数均摊 \(O 阅读全文
摘要:
主要是忘了复杂度证明,所以来记一记 int merge(int u, int v, int l, int r) { if (!u || !v) return u | v; if (l == r) return a[u].sum += a[v].sum, u; a[u].lc = merge(a[u] 阅读全文
摘要:
随时更新 柯朵莉树,Assign,要先 Split(r + 1) 再 Split(l) 而不是先 Split(l) 再 Split(r + 1) 解析 1 如果 \(l,r+1\) 在同一个颜色段内,你 Split(l) 再 Split(r + 1) 时 l 这个颜色段的指针已经被删除。 阅读全文
摘要:
Solution 首先只考虑回文串的答案;我们重点考虑的是偶回文串 结论:对于偶回文串 \(u\),从其最长的长度小于等于他的一半的回文后缀,或其父亲转移过来,一定是最优的 证明: 设 \(u\) 的一个回文子串为 \(v\)(不是父亲),你要让 \(v\to u\) 的转移最优 首先 \(v\) 阅读全文
摘要:
Solution 线段树套 trie,秒了! \(O(n\log^2 n)\) Code #include <bits/stdc++.h> using namespace std; #define rep(i, j, k) for (int i = (j); i <= (k); ++i) #defi 阅读全文
摘要:
Statement 一棵树,每个节点上有一个集合,每个儿子集合由父亲集合增加一个点 \((x_i,c_i)\) 或删除一个点得到。根节点集合为 \(\{(0,0,0,c_0)\}\) 多次询问,每次问 \(u\) 点的集合内,\(\min\{(x_i-x)^2+c_i\}\) Solution 首先 阅读全文