E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
--------虚树
【图论】
虚树
- 模板总结
适用于解决一棵树中只需要用到少部分点的时候,将需要用到的点提出来单独建一棵树/*********************
虚树
*********************/structedge{intto,
Texcavator
·
2024-09-07 19:32
图论
图论
P4606 [SDOI2018]战略游戏
接着,我们需要利用类似
虚树
的套路,也算是一个小
andyc_03
·
2024-02-05 21:38
算法
圆方树
奋斗在NOIP的路上
刷题是一种出路枚举是一种思想打表是一种勇气搜索是一种信仰剪枝是一种精神骗分是一种日常爆零是一种宿命WA是一种绝望TLE是一种痛苦RE是一种放弃UKE是一种无奈AC是一种原谅AK是一种幻想弃赛是一种颓废吊打是一种必然进队是一种奢望NOI是一种梦想屏幕在深夜微微发亮思想在那
虚树
路径上彷徨平面的向量交错生长织成忧伤的网剪枝剪去我们的疯狂
唱古吟今
·
2023-10-22 01:38
虚树
问题引入你是否遇到过下面这种问题:SDOI2011消耗战在一场战争中,战场由nnn个岛屿和n−1n-1n−1个桥梁组成,保证每两个岛屿间有且仅有一条路径可达。现在,我军已经侦查到敌军的总部在编号为1的岛屿,而且他们已经没有足够多的能源维系战斗,我军胜利在望。已知在其他kkk个岛屿上有丰富能源,为了防止敌军获取能源,我军的任务是炸毁一些桥梁,使得敌军不能到达任何能源丰富的岛屿。由于不同桥梁的材质和结
konjac_HZX
·
2023-10-12 02:12
图论
算法
算法
图论
c++
数论div2训练题解
训练链接CF1725E题目链接点击打开链接题目解法因为ggg为质因子个数,所以考虑对于每个质因子分开考虑然后把包含质因子ppp的点建出
虚树
然后答案就是要求∑f(x,y,z)=∑13(d(x,y)+d(x
Farmer_D
·
2023-10-10 09:10
其他
算法
长链贪心+
虚树
+类直径合并性+分块建树维护ST表:1008T4
http://47.92.197.167:5283/contest/408/problem/4两个可以推的经典套路:我们可以对所有点建序树,然后取前kkk大。而取前kkk大可以通过以直径端点为根长剖来贪心直径具有合并性(不仅是连通块,而且是点集)。同理,前kkk大的点也具有合并性。想到这里,我们就已经知道对于相应点集如何求答案。同时知道如何对两个点集进行合并,我们就可以直接上线段树了。然而可以更优
Qres821
·
2023-10-08 23:33
长链贪心
序树
分块
ST表
直径
数据结构
树剖
虚树
详细讲解
新学
虚树
,写篇文章仔细地回顾一下吧。。。这玩意花了挺长时间的。什么是
虚树
虚树
常常被使用在树形dpdpdp中,就比如这题。
黑夜和白天
·
2023-10-01 09:13
#
树形dp
【做题笔记】
虚树
(LuoguP2495 - [SDOI2011] 消耗战)
虚树
在给定的树上问题中,树的大小过大,导致总时间复杂度O(nq)O(nq)O(nq)不能被接受,但是有很多点在查询的过程中根本用不到,所以对于每一个查询,建立一个小的查询树,在这个小树上求解问题。
xhyu61
·
2023-09-01 23:22
做题笔记
笔记
图论
算法
虚树
虚树
是用来优化树形dp的东西,它的转移是从一些特殊点,向根节点转移,期间它有用的转移点比较特殊。通常询问次数较多,但特殊点总和较少,就可以每次询问先建
虚树
再跑dp。
_fairyland
·
2023-08-15 06:52
dp
树形dp
算法
动态规划
虚树
学习笔记
虚树
文章目录
虚树
基本概念:例题:题目大意分析:
虚树
code基本概念:
虚树
是指在原树上选择若干点组成的树,它在原树的基础上做了一些简化,但是保留必要的信息,从而使得计算更加高效。
2020fengziyang
·
2023-04-08 22:07
dfs
虚树
tree
学习
算法
图论
记录美好生活 艹
RedBlackTree 磨磨蹭蹭地写
虚树
,结果半天没出来。
李昌荣。
·
2022-03-28 19:52
动态规划
算法
哈希算法
微说‖ 太虚
太虚仙种太
虚树
,太虚果中有太玄。折枝不见太玄人,太玄音幻百千万。玄隐归门玄隐安,太虚花落太始年。太虚山深处,一座半隐大殿屹然而立,常年不见开合的白玉门慢慢打开。
一纸疯癫
·
2021-06-20 01:26
虚树
适用题目特征树上有若干关键点(每次询问给出若干关键点),且关键点的总数是与树大小同阶,也就是说实际上一次询问中关键点对于整棵树来说是很稀疏的,所以需要让复杂度由关键点的总数来决定。即把一整颗大树浓缩成一颗小树。原理仅包含关键点和他们的LCA的树不会丢失信息。例题LuoguP2495代码如下/*LuoguP2495*/#definemethod_1#ifdefmethod_1/**/#include
云中翻月
·
2021-06-09 14:19
ZJL的OI知识汇总图
最后更新于:2018-07-15ZJL的OI知识汇总图亟待解决的问题:博弈论全部差分约束与Tarjan算法二分图全部ISAP算法和zkw费用流,以及各类网络流优化欧拉图生成树计数与其他生成树计算几何全部
虚树
ZJL_OIJR
·
2021-04-15 11:04
LG P3233 [HNOI2014]世界树(
虚树
,dp)
LGP3233[HNOI2014]世界树Solution看完题意,显然是
虚树
。
All_fade_away
·
2020-12-30 13:24
长相思 四首
弄影花姿
虚树
梢。冷风
柏荣生
·
2020-12-19 22:14
[bzoj2286][Sdoi2011]消耗战
虚树
模板题..Orzw_yqts#includeusingnamespacestd;#defineinf(1LL=0;--i)if(deep[fa[x][i]]>=deep[y])x=fa[x][i];
YZH__12345
·
2020-09-16 18:33
虚树
[SDOI2018]战略游戏,洛谷P4606,圆方树+
虚树
正题看到这样的性质就可以想到圆方树,而两点之间贡献的答案就是路径上的圆点数量,为了去重,我们只需要将
虚树
建出来求路径上的点权和就行了,实际上并不需要建出来,可以发现按照dfs序排一下之后就可以考虑欧拉回路
Deep_Kevin
·
2020-09-16 17:07
点双联通分量
圆方树
虚树
luogu4775[NOI2018]情报中心
虚树
线段树合并
[NOI2018]情报中心题目传送门分析即zjoi线图之后又一道两百行代码的题。其实luogu题解里面的那份标解已经足够清楚了,自己写一遍只是为了加深理解。题目大意:给定一棵带边权的树,给定树上的多条链,每条链有费用,求有公共边的两条链并的边权和-费用的最大值。这道题的一个核心思路是考虑交边的状态,不难发现如下两种情况:没错我盗的图,略略略对于没有公共Lca的链,他们的链交是一条直上直下的链对于有
lvzelong2014
·
2020-09-13 05:42
数据结构-线段树&&树状数组
树上操作-虚树
[后缀自动机 后缀树
虚树
] BZOJ 3879 SvT
挺无脑的一个题直接反串后缀自动机建出后缀树然后询问建
虚树
#include#include#includeusingnamespacestd;typedeflonglongll;inlinecharnc(
里阿奴摩西
·
2020-08-26 14:57
虚树
后缀自动机
算法竞赛训练中较难的部分
快速傅里叶变换与多项式乘法、除法、求逆、多点求值、牛迭NTT快速数论变换FWT快速沃尔什变换(TopCoderSRM518Nim)最大团问题最小树形图(CodeForces240E)支配树DominatorTree、
虚树
带花树一般图匹配
skywalkert
·
2020-08-26 14:01
总结
BZOJ3879:SvT(后缀自动机+
虚树
)
对于这里,把询问给出的结点在后缀树上建出
虚树
,每个点算贡献即可。具体是这样的,
KKiseki
·
2020-08-26 13:42
虚树
后缀自动机
【BZOJ3879】SvT 后缀树+
虚树
后缀
虚树
好了,下面发一段以前的文字。话说其实后缀数组分治能写,当时想shei了。Vn:啊,水题。一看到“后缀”和这数据范围,肯定后缀数组、后缀自动机、后缀树走起!
空灰冰魂
·
2020-08-26 12:54
后缀自动机
后缀树
虚树
后缀数组
分治
bzoj 3879: SvT 后缀自动机+后缀树+
虚树
题解:首先可以很简单的看出是后缀树,然后就很自然地想到用后缀自动机来构建后缀树,然后就变成了一道裸的
虚树
DP。
LZJ209
·
2020-08-26 11:15
后缀自动机
后缀树
虚树
DP
你是OI的算法天
我说你是OI的算法天;tarjan点亮了连分量;思想在那
虚树
路径中交舞着变。你是树链剖分里的重链,dp转方程的难,A星在无意中闪,增广路撒在流前。
ymzqwq
·
2020-08-24 18:25
233
[树状数组]飘雪圣域
没找到传送门(这是校内的)题意:给一棵树,多次询问编号在l到r中的点组成的连通块个数考试的时候一直在想奇怪的做法,用的都是树上维护的知识(比如已经被某C姓神仙卡掉的
虚树
+树剖+二分)其实这道题根本不需要树上的知识首先要知道一个区间的连通块个数等于点数
romiqi_new
·
2020-08-24 15:54
OI算法汇总
数据结构线段树树状数组平衡树Link-Cut-Tree可持久化数据结构分块KD树可合并堆(左偏树)2.数学组合数学质数模数论函数矩阵博弈论3.图论强连通分量(SCC)拓扑排序割点与桥欧拉回路4.树LCA树链剖分分治(点/边)
虚树
YxuanwKeith
·
2020-08-24 12:34
总结
莫比乌斯反演+
虚树
题目链接:http://codeforces.com/contest/809/problem/EE.Surpriseme!Tiredofboringdates,LehaandNooradecidedtoplayagame.Lehafoundatreewithnverticesnumberedfrom1ton.Weremindyouthattreeisanundirectedgraphwithout
Marco_L_T
·
2020-08-24 07:12
题解
[codeforces375D]Tree and Queries(dsu on the tree+bit)
先把询问记录下来—-这里的询问记录很多都用
虚树
呢这里因为是至少k次,用bit就很好了,这里对于bit的处理十分巧妙,记录出现多少次的颜色种类add操作if(cnt[a[x]])change(cnt[a[
wwyx2001
·
2020-08-24 07:31
树状数组
dsu
on
tree
[LOJ2339][
虚树
][边分治][树形DP]WC2018:通道
LOJ233944pts暴力就不用讲了两棵树的做法似乎是个套路?先拆距离变成dep1[x]+dep1[y]−2∗dep1[lca1(x,y)]+dis2(x,y)dep1[x]+dep1[y]-2*dep1[lca1(x,y)]+dis2(x,y)dep1[x]+dep1[y]−2∗dep1[lca1(x,y)]+dis2(x,y),然后就可以在第一棵树上从下到上枚举lca,消去lca的影响,然后
romiqi_new
·
2020-08-24 06:36
边分治
树形DP
虚树
[WC2017]总结
第二题是很简单的
虚树
,第一题是洲阁筛,要么不会要么忘得差不多了。WCLecture第一堂课的上线率是最高的,大概有70%以上。border那一套理论感
a_crazy_czy
·
2020-08-24 05:28
个人
杂文
WC
codeforces 1055
F题是Trie树卡空间,这个东西分层搞或者建出Trie树的
虚树
都可以做。
Timsei
·
2020-08-22 01:05
记录在APIO2019前
今天下午去学了
虚树
(其实没什么的),就是建完
虚树
后树形DP一下啦,不知道为什么以前一直没有学。
baizu1991
·
2020-08-20 23:34
[WC2018]通道——边分治+
虚树
+树形DP
题目链接:[WC2018]通道题目大意:给出三棵n个节点结构不同的树,边有边权,要求找出一个点对(a,b)使三棵树上这两点的路径权值和最大,一条路径权值为路径上所有边的边权和。我们按照部分分逐个分析有1、2、3棵树时的做法。首先说一个结论,在下面讲解中能应用到:对于一棵树T1的直径两端点为u,v,对于另一棵树T2的直径两端点为x,y,如果将两棵树合并(即将两棵树中的各一个点连边)那么新树的直径的两
weixin_33881050
·
2020-08-18 17:21
虚树
笔记
定义给定一棵树和一个关键点集合,把关键点和其相互的lcalcalca构成的类似原树的结构,称为
虚树
.
zsyzlzy
·
2020-08-18 09:23
虚树
将树压缩成若干个有用的点for(inti=0;iusingnamespacestd;charbuf[1inlineTTboolread(T&x){x=0;charc=gc();boolf=0;while(c57){if(c==EOF)return0;f^=(c=='-'),c=gc();}while(47ye[++cnt].y=y;e[cnt].v=v;e[cnt].nt=head[x];head
一条很咸的鱼
·
2020-08-18 05:01
模板
图论
仙人掌 && 圆方树 &&
虚树
总结
仙人掌&&圆方树&&
虚树
总结Part1仙人掌定义仙人掌是满足以下两个限制的图:图完全联通。不存在一条边处在两个环中。其中第二个限制让仙人掌的题做起来十分舒服。仙人掌的基环DP首先勾出一棵有根生成树。
df4516
·
2020-08-17 22:20
ACM模板(个人代码集整理)(博客停止更新,内附github链接,会在github继续更新)
(*)点分治(*)kd-Tree(*)斜率优化DP最大流Dicnic(*)最小费用最大流(SPFA)(*)线段树(*)dfs靠谱找环靠谱找凸包(*)tarjan缩点+点双连通(寻割)+边双连通(寻桥)
虚树
calabash_boy
·
2020-08-17 21:52
Codeforces 1073G Yet Another LCP Problem:SAM+
虚树
DP
题意:给出一个长度为n的串s,每次询问给出两个整数集合:S,T,求∑x∈S∑y∈TLCP(S[x,n],S[y,n])\sum_{x\inS}\sum_{y\inT}LCP(S[x,n],S[y,n])∑x∈S∑y∈TLCP(S[x,n],S[y,n])题解:先将Sreverse一下,询问等价于前缀的最长公共后缀,而两个串的最长公共后缀,对应于他们sam节点的fail树上lca点的len。因此先构
calabash_boy
·
2020-08-17 21:52
Codeforces
GP of China H Inner Product: 边分治 +
虚树
dp
题意给出两棵树TTT和T′T'T′,求∑i,j∈[1,n]dis(i,j)∗dis′(i,j)\sum_{i,j\in[1,n]}{dis(i,j)*dis'(i,j)}i,j∈[1,n]∑dis(i,j)∗dis′(i,j)题解对TTT进行边分治,当前分治的边为,边权为www时,设uuu一侧的点集为LLL,vvv一侧的点集是RRR,则经过当前边的dis(i,j)dis(i,j)dis(i,j)对
calabash_boy
·
2020-08-17 21:52
专题练习
洛谷P5115 : SAM + 边分治 +
虚树
dp
题意给出串SSS,K1,K2K1,K2K1,K2,求∑1≤iK2len>K2len>K2点的lenlenlen置为0,同理将S′S'S′的parentparentparent树中len>K1len>K1len>K1点的len′len'len′置为0。之后便可以认为是一棵有边权的树,根据depdepdep来确定每条边的长度。则求的就是所有点对在两个数中的LCA的深度之积的和。即∑1≤i,边权是w时,
calabash_boy
·
2020-08-17 21:51
洛谷
洛谷模板题单
最长公共子序列P1452凸包直径(旋转卡壳)P1531区间求最值P1595伯努利错装信封问题P1742最小圆覆盖问题P1908逆序对P1939矩阵加速(数列)P2197nim游戏P2483k短路P2495
虚树
weixin_30834783
·
2020-08-17 19:58
[学习笔记]
虚树
模板:(树剖\(LCA\)+建
虚树
)#includeusingnamespacestd;constintmaxn=100000+10;intn,m,dp[maxn],vis[maxn],h[maxn],
weixin_30537391
·
2020-08-17 19:22
图论杂项细节梳理&模板(
虚树
,圆方树,仙人掌,欧拉路径,还有。。。)
orzYCB
虚树
%自为风月马前卒巨佬%用于优化一类树形DP问题。当状态转移只和树中的某些关键点有关的时候,我们把这些点和它们两两之间的LCA弄出来,以点的祖孙关系连成一棵新的树,这就是
虚树
。
a83229442
·
2020-08-17 18:55
[Scoi2016]背单词[字典树+dfs重构树[类似
虚树
]]
解题思路:很明显第一个条件是可以避免的,第二个条件是第三个条件的特殊情况,所以有用的只有第三个条件,现在我们就是想将这些单词重排使得每个单词后缀都在这个单词的前面并且代价最小我们举个例子:6acaeagdahdaifb很明显我们发现很多点是没有用的我们为了计算其实可以直接提出红色的点我们可以举几个例子,发现先跑子树小的明显最优#include#include#include#include#inc
黑夜和白天
·
2020-08-15 17:52
字符串算法
【WC2018】通道 边分治
虚树
原文链接https://www.cnblogs.com/zhouzhendong/p/UOJ347.html题意有三棵树,边有边权。对于所有点对(x,y)求在三棵树上x到y的距离之和的最大值。点数#defineclr(x)memset(x,0,sizeof(x))usingnamespacestd;typedeflonglongLL;LLread(){LLx=0,f=0;charch=getcha
weixin_30527143
·
2020-08-13 20:50
「NOI2018」情报中心(线段树合并)(
虚树
)
传送门神题一道题意:一棵树,有边权,mmm条路径,路径有代价,选择两条相交的路径使得路径的并的边权-总代价最大n≤5e4,m≤1e5,∑n≤1e6,∑m≤2e6,8sn\le5e4,m\le1e5,\sumn\le1e6,\summ\le2e6,8sn≤5e4,m≤1e5,∑n≤1e6,∑m≤2e6,8s直接考虑S1,S2S_1,S_2S1,S2的性质S1S_1S1:路径的lcalcalca两两不
FSYo
·
2020-08-13 18:10
线段树合并
虚树
【UOJ347】【WC2018】通道 边分治
虚树
DP
题目大意给你三棵树,点数都是nn。求maxi,jd1(i,j)+d2(i,j)+d3(i,j)maxi,jd1(i,j)+d2(i,j)+d3(i,j)其中dk(i,j)dk(i,j)是在第kk棵数中i,ji,j两点之间的距离。n≤100000n≤100000题解设d(i,j)=d1(i,j)+d2(i,j)+d3(i,j),hk(i)d(i,j)=d1(i,j)+d2(i,j)+d3(i,j),
ez_yww
·
2020-08-13 14:34
数据结构
树的分治
DP
数据结构--虚树
bzoj-2286 消耗战【
虚树
+倍增lca+单调栈】
2286:[Sdoi2011消耗战TimeLimit:20SecMemoryLimit:512MBSubmit:1815Solved:645[Submit][Status][Discuss]Description在一场战争中,战场由n个岛屿和n-1个桥梁组成,保证每两个岛屿间有且仅有一条路径可达。现在,我军已经侦查到敌军的总部在编号为1的岛屿,而且他们已经没有足够多的能源维系战斗,我军胜利在望。已
兔衰
·
2020-08-13 12:21
acm_数据结构
虚树
倍增lca
单调栈
HDU 6035 Colorful Tree(
虚树
)
ColorfulTreeTimeLimit:6000/3000MS(Java/Others)MemoryLimit:131072/131072K(Java/Others)TotalSubmission(s):443AcceptedSubmission(s):155ProblemDescriptionThereisatreewithnnodes,eachofwhichhasatypeofcolorr
yasolx
·
2020-08-13 12:05
算法
图论
上一页
1
2
3
4
5
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他