随笔分类 - 具体问题
摘要:算法 观察到把每个 \(a_i\) 向 \(i\) 连边, 形成一个外向基环树森林 问题转化为 在一个基环树上, 选择一个点后, 其儿子节点至少有一个不能选, 求最大选点个数 对于森林中的每一棵基环树 容易想到找环, 对于环上每一点, 问题转化为树上的上述问题 显然是树形 dp 令 \(f_{x,
阅读全文
摘要:前言 很难蚌的一次考试, 很难确定是实力问题还是什么 算法 事实上是可以看出是 dp 题的 令 \(f_{i, j}\) 为考虑到 \(i\) 位的答案, 当前颜色为 \(j\), \(j \in {0, 1}\) 令 \(last_i\) 表示 \(i\) 位前第一个与 \(i\) 位颜色相同的
阅读全文
摘要:题面 自出题 挂个 pdf 题面下载 算法 看到交换, 这里有一个套路: 确定最终的形态后, 交换次数即为逆序对个数 我们直接设 \(f_{i, j, k, 0 / 1 / 2}\) 表示 \(3\) 种颜色填到哪里了,最后一个是什么颜色,逆序对数最少是多少 转移分最后一个是什么颜色讨论 关于 \(
阅读全文
摘要:题面 自出题 挂个 pdf 题面下载 算法 暴力 可能的答案只有 \(O(n^2)\) 个, 考虑每个答案 \(\rm{check}\) 是 \(O(n \log n)\) 的 总时间复杂度 \(O(n ^ 3 \log n)\) /*O(answer * n * logn), 即 O(n^3log
阅读全文
摘要:算法 题意可以转化成 给定一个基环树森林, 求每颗基环树上的直径长度之和 找环 按照基环树的方法找即可 求直径 (i) 直径不经过环 对于以环上每一个点的子树, 记录直径即可 (ii) 直径经过环 断环为链, 考虑单调队列处理, 具体的 关于为什么需要断环为链: 方便快速处理环上两点间的距离, 显然
阅读全文
摘要:算法 显然可知, 最大的权值显然是 \(2 \times n + 1\) 我们也可以发现取最大值时序列的特征:中位数大于 $\frac{n}{2} $ , 且包括整个大序列所有大于中位数的整数以及相等个数的小于中位数的数 所以枚举中位数, 找区间 \([L, R]\) 使得 \(i\) 到 \(n\
阅读全文
摘要:算法 博弈类型的题 这个题属于最优解法的问题 最初可以看出 \(\rm{yy}\) 交换的列一定是一黑一白的, 不然无意义 考虑 \(\rm{youyou}\) 怎么选 对于两个都是黑的情况, 显然是都要选的, 这种贡献 yy 影响不了 对于两个都是白的情况, 显然是只选一个, 最大化贡献 对于一白
阅读全文
摘要:算法 一眼数论题, 还是看看远处的顶针吧 从 \(n \leq 10^{14}\), 可以看出, 支持的操作最多也就是将 \(n\) 分解质因数, 观察发现, \(n\) 的质因数进行一个筛, 可以将 \(\gcd(a, n) \neq 1\) 的所有数都筛走 看起来有机会, 但是筛法是不会的 考虑
阅读全文
摘要:题面 似乎有原题, 但是很偏 挂个 pdf 题面下载 算法 一眼树形 dp 然而考场上没想出来 很显然有一个式子 令 \(f_u\) 表示从 \(u\) 进入子树, 再通过迁越回到点 \(u\) 的最大价值 则有 \[f_u = \sum_{exist\text{ }u \rightarrow v}
阅读全文
摘要:一轮复习 题面 似乎有原题, 但是很偏 挂个 pdf 题面下载 算法 暴力 很显然, 只需要在并查集维护时稍微加上一点细节 #include <cstdio> using namespace std; int n,m,fa[500010],a[500010]; long long ans=0; in
阅读全文

浙公网安备 33010602011771号