随笔分类 - 数据结构 - KD-tree
摘要:刚开始看到这道题的时候想的是线段树分治,毕竟这里的乘法和加法都是可以撤销的. 但是后来发现如果想要线段树分治的话就必须要满足交换律,但是标记 $(x,y)$ ( 乘 $x$ 后加 $y$)只满足结合律,不满足交换律. 那么就考虑 kdtree. kdtree 是维护平面上点的数据结构,然后我们可以把
阅读全文
摘要:暴力枚举的话是 $O(n^2)$ 的,但是我们可以维护每个圆的外接矩阵,然后显然如果一个圆会被当前圆删,外接矩阵一定有交集,所以就可以用 KDtree 来剪枝了. 直接做的话洛谷上能过,LOJ 上要在开始的时候把所有点都旋转一个特定的角度来保证随机性. code: #include <bits/st
阅读全文
摘要:明明可以用二维数点来做啊,网上为什么都是树剖+线段树呢 ? code: #include <cstdio> #include <cstring> #include <algorithm> #define N 100006 #define inf 1000000 #define ll long lon
阅读全文
摘要:给你一堆线段,求:一个区间内包含的本质不同线段种类数(只要线段有一部分在区间中就算是包含) 考虑容斥:总线段数-被那些没有询问的区间完全覆盖的数量. 用离线+树状数组数点或者 KDtree 数点即可. #include <bits/stdc++.h> #define N 300005 using n
阅读全文
摘要:多组数据真tm恶心~ 把 $dfs$序和深度分别看作横纵坐标,然后用 $KDtree$ 数点就可以了~
阅读全文
摘要:题目链接 第一眼就是 $KDtree$ 优化建图然而,空间只有 $128mb$,开不下 时间不吃紧,考虑直接跑 $Dijkstra$ $Dijkstra$ 中存储的是起点到每个输入时给出的矩阵的最短距离 当取出堆顶时就将这个矩阵中所有点 "裂开",并更新每一个小点的答案 如果该点在之前已经被一个最短
阅读全文
摘要:Description 维护一个W*W的矩阵,初始值均为S.每次操作可以增加某格子的权值,或询问某子矩阵的总权值.修改操作数M<=160000,询问数Q<=10000,W<=2000000. 维护一个W*W的矩阵,初始值均为S.每次操作可以增加某格子的权值,或询问某子矩阵的总权值.修改操作数M<=1
阅读全文
摘要:escription 平面上有n个点。现在有m次询问,每次给定一个点(px, py)和一个整数k,输出n个点中离(px, py)的距离第k大的点的标号。如果有两个(或多个)点距离(px, py)相同,那么认为标号较小的点距离较大。 平面上有n个点。现在有m次询问,每次给定一个点(px, py)和一个
阅读全文
摘要:Description 因为是OJ上的题,就简单点好了。给出一个长度为n的序列,给出M个询问:在[l,r]之间找到一个在这个区间里只出现过一次的数,并且要求找的这个数尽可能大。如果找不到这样的数,则直接输出0。我会采取一些措施强制在线。 因为是OJ上的题,就简单点好了。给出一个长度为n的序列,给出M
阅读全文
摘要:Description 已知平面内 N 个点的坐标,求欧氏距离下的第 K 远点对。 已知平面内 N 个点的坐标,求欧氏距离下的第 K 远点对。 Input 输入文件第一行为用空格隔开的两个整数 N, K。接下来 N 行,每行两个整数 X,Y,表示一个点 的坐标。1 < = N < = 100000,
阅读全文
摘要:Description 巧克力王国里的巧克力都是由牛奶和可可做成的。但是并不是每一块巧克力都受王国人民的欢迎,因为大家都不喜 欢过于甜的巧克力。对于每一块巧克力,我们设x和y为其牛奶和可可的含量。由于每个人对于甜的程度都有自己的 评判标准,所以每个人都有两个参数a和b,分别为他自己为牛奶和可可定义的
阅读全文
摘要:Description 小猪iPig在PKU刚上完了无聊的猪性代数课,天资聪慧的iPig被这门对他来说无比简单的课弄得非常寂寞,为了消除寂寞感,他决定和他的好朋友giPi(鸡皮)玩一个更加寂寞的游戏 捉迷藏。 但是,他们觉得,玩普通的捉迷藏没什么意思,还是不够寂寞,于是,他们决定玩寂寞无比的螃蟹版捉
阅读全文
摘要:Description 神犇Aleph在SDOI Round2前立了一个flag:如果进了省队,就现场直播喝崂山白花蛇草水。凭借着神犇Aleph的实 力,他轻松地进了山东省省队,现在便是他履行诺言的时候了。蒟蒻Bob特地为他准备了999,999,999,999,999,999 瓶崂山白花蛇草水,想要
阅读全文
摘要:KDtree真的很妙啊,真的是又好写,作用还多,以后还需更多学习呀. 对于这道题,我们求的是曼哈顿距离的最小值. 而维护的变量和以往是相同的,就是横纵坐标的最小值与最大值. 我们设为一个极为巧妙且玄学的股价函数. 设当前矩阵的边界为 (x1,y1),(x2,y2). 那么对于当前要查询的点 $p$
阅读全文

浙公网安备 33010602011771号