圆方树
_Ark
这个作者很懒,什么都没留下…
展开
-
bzoj 3331: [BeiJing2013]压力 (点双 圆方树 树链剖分 线段树)
题面 如今,路由器和交换机构建起了互联网的骨架。处在互联网的骨干位置的 核心路由器典型的要处理100Gbit/s的网络流量。他们每天都生活在巨大的压力 之下。 小强建立了一个模型。这世界上有N个网络设备,他们之间有M个双向的 链接。这个世界是连通的。在一段时间里,有Q个数据包要从一个网络设备发 送到另一个网络设备。 一个网络设备承受的压力有多大呢?很显然,这取决于Q个数据包各自走 的路径。不过,某...原创 2020-01-12 15:22:11 · 307 阅读 · 0 评论 -
BZOJ 2125: 最短路(仙人掌 圆方树)
题面 BZOJ 给出一棵仙人掌(每条边最多属于一个环),多次询问求两点最短路。 题解 建圆方树,分lcalcalca是圆点还是方点讨论一下。具体见 神犇yyb的博客。但是题目并没有保证没有重边,而这个链接里的代码是默认没有重边(也就是没有长度为二的环)的,所以下面这组数据可以hackhackhack他。 2 2 1 1 2 100 2 1 200 1 2 显然答案是100100100,但是上面...原创 2020-01-06 17:23:28 · 231 阅读 · 0 评论 -
BZOJ3331 压力 (圆方树+树上差分)
题意 略 题解 求路径上的割点。 然后就直接圆方树上差分 CODE #include <bits/stdc++.h> using namespace std; inline void rd(int &x) { char ch; for(;!isdigit(ch=getchar());); for(x=ch-'0';isdigit(ch=getchar());)x...原创 2019-10-21 15:58:41 · 245 阅读 · 0 评论 -
uoj30【CF Round #278】Tourists(圆方树+树链剖分+可删除堆)
… 学习了一波圆方树 学习了一波点分治 学习了一波可删除堆(巧用 ? STL) 传送门: Icefox_zhx 注意看代码看怎么构建圆方树的. tips:tips:tips:圆方树内存记得开两倍 CODE #include <vector> #include <queue> #include <cstdio> #include <cctype> ...原创 2019-03-25 17:28:12 · 256 阅读 · 0 评论 -
Luogu P4082 [USACO17DEC]Push a Box 点双连通分量/圆方树
(貌似有圆方树的做法,我写的是点双) 显然这道题就是直接搜索。定义状态为f[i][j][0~4]表示箱子在(i,j),人在某个方向推。然后问题就是怎么转向。我们发现如果要转向,必须是人走过一条不包括(i,j)的路径到另一个方向。那么直接求一个点双联通分量就完事了。把点双联通里面的点两两之间都有至少两条不经过重复点的路径,这样就能转向了。 点双内,具体的处理方法是开一个桶。 具体见代码 CODE #...原创 2019-07-16 15:32:08 · 300 阅读 · 0 评论