随笔分类 -  数据结构->K-D树

摘要:"【牛客网】Finding Hotel" 忘记K远点对的剪枝的我有点自闭 事实上我们只要先建一棵KD树出来,维护一下所在的矩形,和子树里的最小值 每次查询的时候如果最小值比查询的值要大的话就退出 当前的答案构成了一个圆,若圆和矩形没有交就退出(不一定很严格,可以认为是以圆心为中心向上下左右延伸半径长 阅读全文
posted @ 2019-06-28 11:47 sigongzi 阅读(302) 评论(0) 推荐(0)
摘要:"【牛客网】Longest Common Subsequence" 发现只有d数组最格路 于是我们把前三个数组中相同的数记成一个三维坐标,同一个数坐标不会超过8个 从前往后枚举d,每次最多只会更新不超过8个点 而每个点更新就是找这个点三维偏序都小于它的最大的一个值+1来更新它 用KD树来维护,这个点 阅读全文
posted @ 2019-06-28 10:20 sigongzi 阅读(355) 评论(0) 推荐(0)
摘要:"【ZOJ】4012 Your Bridge is under Attack" 平面上随机n个点,然后给出m条直线,问直线上有几个点 $n,m \leq 10^{5}$ 由于共线的点不会太多,于是我们可以建KD树出来直接查询,这条直线和某个矩形不相交则不搜索这个子树 cpp include defi 阅读全文
posted @ 2019-06-27 19:11 sigongzi 阅读(429) 评论(0) 推荐(0)
摘要:题解 不旋转坐标系,TLE,旋转坐标系,最慢一个点0.5s……maya,出题人数据水平很高了…… 好吧,如果你不旋转坐标系,写一个正确性和复杂度未知的K D树,没有优化,你可以得到87分的好成绩 但是你就是傻逼,你就是写不出来,能有什么办法,APIO Ag滚粗了呗= = 这道题看起来需要用什么东西维 阅读全文
posted @ 2018-06-06 10:00 sigongzi 阅读(564) 评论(2) 推荐(0)