摘要:
传送门 题目分析 一道 dfs,迭代加深 我们可以很快的猜出来最终 m 的长度必然是小于 10 的。 而这种浅深度的问题正好适用于迭代加深。 之后考虑剪枝 优化搜索顺序 : 我们要让序列中的数字迅速地逼近 n,自然是要 i 和 j 从大到小枚举,且 j<=i、 排除等效冗余 阅读全文
摘要:
块状链表 对于线性表,可以 O(1) 的访问,但是插入和删除操作是 O(n) 对于链表,可以 O(1) 的进行插入和删除,但是是 O(n) 的访问。 于是本着分块的思想,有了块状链表 。 大概长这个样子。每个块的大小数量级在 O(√n) , 块数的量级 $ O(\sq 阅读全文
摘要:
分块 分块算法实质上是一种是通过分成多块后在每块上打标记以实现快速区间修改,区间查询的一种算法。其均摊时间复杂度为 O(√n) 分块算法相较于各种树形数据结构,具有简便易写,方便调试等多种优点。在同等数据规模下,如 1e5 ,其时间效率并不会低太多,在考试时反而是一种有力的得分方法 阅读全文
摘要:
T1 数据结构 第一个操作很好实现,只需要增加 xk 即可 第二个操作是瓶颈,暴力做是不行的 瓶颈在操作 2,若是可以减少操作 2 的复杂度,就可以通过本题 怎么做呢?我们知道每个数到底被加了几次,就可以一次性算出它的贡献 我们每次操作 2 使用一个懒标记,加入 x 就是加入 阅读全文
摘要:
NTT 1.概念 数论变换由于快速傅里叶变换的提出,大大减少了计算运算次数在有循环卷积特性的条件下,快速数论变换是具有比快速傅里叶更快的快速变换算法。 2.生成子群 子群 : 群 (S,⊕),(S′,⊕) , 满足 S′⊂S , 则 (S′,⊕) 是 (S,⊕) 的子群 3.原根 阅读全文
摘要:
FFT 1.前言 FFT 要涉及很多前置基本概念,例如向量,复数等,在这里向量等简单概念不提。 2.1 复数 设 a,b 为实数,i2=−1 ,如果一个数 z ,满足 z=a+bi 的数叫复数,其中 a 为实部,b 为虚部,i 为虚数单位,当 b=0 时,称 z 阅读全文
摘要:
前言 LJ 认为我的 DP 是我的一大弱项,便精心为我准备了 毒瘤DP 12 题(然后发现原来给的 T1 是个树套树,就变成 毒瘤DP 11 题 感谢 LJ 教练。。。。。 为了方便复习,代码均格式化 PS : 如果 BZOJ 打不开可以用这个 link T1 LibreOJ#6089. 小 Y 的 阅读全文
摘要:
1. 定义 由 m×n 个数 aij 排成的 m 行 n 列的数表称为 m 行 n 列的矩阵,简称 m×n 矩阵。记作: 这 m×n 个数称为矩阵 A 的元素,简称为元,数 aij 位于矩阵 A 的第 i 行第 j 列,称为矩阵 阅读全文
摘要:
行列式 1.1.1 认识行列式 我们解一个方程组$\begin{equation}\left{\begin{aligned}5x+6x&=7\9x+4y&=3\\end{aligned}\right.\end{equation},易知:\begin{equation}\left{\begin{a 阅读全文
摘要:
什么是 KDT 一种平衡树, 维护 k 维空间中的点的信息. 每个节点表示一个点, 每个子树表示对应的 k 维超长方体. 这样说可能过于抽象, 那就先分析特殊情况, 因为 k=1的时候, 维护的信息是序列上的, 所以这时的 1−d Tree 就是普通平衡树. k=2 的情 阅读全文