
点分树
PH_2002
这个作者很懒,什么都没留下…
展开
-
BZOJ震波
前言跟烁烁的游戏一模一样代码#include<bits/stdc++.h>#define LL long longusing namespace std;const int _ = 1e5+1e2;const int INF = 2e9;namespace zjy_io{ inline char gc(){ static char buf[...原创 2018-08-03 17:03:44 · 377 阅读 · 0 评论 -
ZJOI幻想乡战略游戏【题解】
前言动点分思维难度还是高些,不像点分那样板(这也是为为什么写题解的原因)。但其实也不难,像我这种动点分学都没学只知道要建点分树的蒟蒻都可以 大力 yy一波(为了研究各种性质捣鼓一个晚上)题面题面就不粘了,搞个链接戳sol分治树就是一个数据结构。大部分优秀的数据结构都是带log的,这是因为利用了化小子问题或是利用线性来作为原理支撑。 数据结构的优秀是建立在修改与查询几乎相等或者...原创 2018-07-31 19:01:40 · 258 阅读 · 0 评论 -
[ZJOI2007]捉迷藏
前言又是一道动点分 真是越来越套路题面详细题面请戳 概要 : 一棵树,一开始,所有点都为白色,若干次修改。每一次选择一个点,改变其颜色(白变黑,黑变白)。若干次询问,每一次问最远的两个白点的距离。sol这道题据说有两种解法,点分治与括号序列点分治解法自然,易于理解 首先一点就是,如何用STL优先队列删除某一个指定元素。 一般会在迪杰斯特拉求最短路中用到。这...原创 2018-08-01 22:45:01 · 466 阅读 · 0 评论 -
QTREE5 - Query on a tree V【题解】
前言动点分。难度属于套路难度,只要掌握了模板,就会做。所以没有详细说明。题面戳;sol提醒的是,该题不需要建立tofa堆代码#include<bits/stdc++.h>using namespace std;const int _ = 1e5+1e3,INF = 2e9;inline char gc(){ static char buf[...原创 2018-08-02 10:12:16 · 409 阅读 · 0 评论 -
BZOJ4372烁烁的游戏【题解】(不定长树状数组)
前言这一道题做了我两天,考试时都在做,搞得我爆零了,原因下面会提到.题面原题描述已经很简洁,故您只需戳. 原题数据从时间上看很水,从空间上看有点卡。sol如果说告诉你这是一道点分治,思路实在不难。根据询问,每次只需要一层层的找那些能囊括自己的点。现在包含自己的等级最小的子树,然后更高级的子树。每一次通过子树的根寻找与自己不在同一子树的点。修改也很简单。 中心思路 把一次一...原创 2018-08-03 15:49:56 · 354 阅读 · 0 评论 -
开店【题解】
前言这道题居然调了我一晚上,原因如下: 1. 题解错误,所以对拍老是出错 2. 建边的数组太多了。有一个忘记*2题面戳sol不知道大家有没有想用点分治写但又不会STL的vector。这里,只要使用一下指针就可以了。首先开一个N*150的空间,对于每一个点都开一个指针,最后根据每一个点的大小用指针动态分配一段空间就行了。 解法其实自然。动态点分治难点就在于建立own和t...原创 2018-08-13 08:28:50 · 258 阅读 · 0 评论