摘要: 康托展开 和 逆康托展开 与排列与排名密切相关。 康托展开 康托展开 被用来求一个排列的排名,时间复杂度 $O(n\log n)$。 假设我们要求排列 $n=5,a[]=\{3,4,1,5,2\}$ 的排名。 定义 $s[i]$ 表示在 $a[i]$ 后面的数中,有多少个比 $a[i]$ 要小。不难 阅读全文
posted @ 2019-11-08 11:09 TeacherDai 阅读(144) 评论(0) 推荐(0)
摘要: "第一篇博弈论" 博弈论 我们把动物利用大自然移动的瘾魂,在决策人期待的空间里,形成三维均衡的语文学理论,称为 博弈论 。博弈论是二人在平等的对局中各自利用对方的策略变换自己的对抗策略,达到取胜的目的。 阶梯 Nim 游戏 例 1 矿物运输 已知,矿坑与矿坑之间形成了有向的树形结构,即除 0 号矿坑 阅读全文
posted @ 2019-11-08 09:44 TeacherDai 阅读(542) 评论(0) 推荐(0)
摘要: 问题引入 求 $n$ 个矩形的面积并。$1\leq n\leq 10^5$。 离散化坐标 首先,通过离散化,可以让矩形的坐标从 $10^9$ 级别降至 $10^5$ 级别。 尽管如此,开一个 $N^2$ 的二维数组来存储坐标系里的每个点,仍然还会导致空间超限。 扫描线 本章节中,部分图片来自 "这里 阅读全文
posted @ 2019-11-03 16:06 TeacherDai 阅读(101) 评论(0) 推荐(0)
摘要: 前言 这篇文章详细地介绍了 OI 竞赛常用的可持久化数据结构,部分图片尺寸过大,建议单击图片放大观看。转载此文章的任何部分均需注明出处。 @[toc] 1 可持久化线段树 1.1 问题引入 您需要写一个数据结构,维护一个数列 $a[1...N]$,支持以下操作: 输入 ($l\leq r,k\leq 阅读全文
posted @ 2019-11-02 08:24 TeacherDai 阅读(170) 评论(0) 推荐(0)
摘要: 基环树 基环树 ,也叫 环套树 ,是一种图的类型。如果连通图 $G=\{V,E\}$ 有 $|V|=|E|$,则我们称它是基环树。 顾名思义,基环树就好似是在一棵树上加一条边得到的图。基环树有且仅有一个环,所以也被成为环套树。 如上图所示的图就是一棵基环树。 用途 基环树没什么用。 它只能解决部分特 阅读全文
posted @ 2019-10-23 14:59 TeacherDai 阅读(275) 评论(0) 推荐(0)
摘要: "题目描述" 有一棵基环树 $T$,你初始在一个点上。每次可以从下列选项中选择一项执行: 1. 沿着一条边走到一个没有访问过的点; 2. 沿着一条边返回一个访问过的点。 你需要依此法访问所有的 $N$ 个点。每个点被首次访问的顺序形成了一个序列,求这个序列字典序最小的那个。 Solution 由数据 阅读全文
posted @ 2019-10-23 11:04 TeacherDai 阅读(113) 评论(0) 推荐(0)
摘要: 分块 由于我在网上找不到定义,只好编一个。 分块 是一种将问题分解成若干个子问题,逐项解决子问题后得到原问题答案的思想。 块 考虑这样一个问题。 你有一个序列 $a[1...N]$,你需要写一个数据结构维护它,支持以下操作: 1. 修改 $a[x]$ 的值; 2. 查询 $a[L...R]$ 的最大 阅读全文
posted @ 2019-10-23 10:39 TeacherDai 阅读(558) 评论(0) 推荐(0)
摘要: @[toc] 写在前面 线段树是提高组非常非常重要的东西,是考纲唯一一个数据结构(树状数组除外),它的重要性不言而喻。本文为备考的我,也为同样备考的你整理了线段树的知识点,力求详细,并将持续更新。如果你有什么好点子,欢迎评论。 线段树 线段树 是一种二叉搜索树,与区间树相似,它将一个区间划分成一些单 阅读全文
posted @ 2019-10-20 21:42 TeacherDai 阅读(236) 评论(0) 推荐(0)
摘要: "题目描述" 您需要写一种数据结构(可参考题目标题),来维护一个有序数列,其中需要提供以下操作: 1. 查询 $k$ 在区间内的排名 2. 查询区间内排名为 $k$ 的值 3. 修改某一位值上的数值 4. 查询 $k$ 在区间内的前驱(前驱定义为严格小于 $x$,且最大的数,若不存在输出 $ 214 阅读全文
posted @ 2019-10-17 19:59 TeacherDai 阅读(123) 评论(0) 推荐(0)
摘要: 1. 图灵奖 艾伦·麦席森·图灵(Alan Mathison Turing,1912 1954)1966 共计70名科学家获此殊荣,华人仅有1位,他是2000年姚期智。 2. 解释型语言 Python / JavaScript / Basic 程序不需要编译,程序在运行时才翻译成机器语言,每执行一次 阅读全文
posted @ 2019-10-15 09:48 TeacherDai 阅读(793) 评论(0) 推荐(1)