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
BZOJ3572
dp杂题
文章目录luoguP2605[ZJOI2010]基站选址
bzoj3572
:[Hnoi2014]世界树bzoj4543:[POI2014]Hotel加强版uoj462.新年的小黄鸭uoj22.
啊宸
·
2020-08-13 17:14
动态规划
【虚数】
BZOJ3572
[HNOI2014]世界树
题意:给出一颗树,每次选中m个点,对于树上任意一个点,会被其最近的一个选中点包含(相同有编号小优先),求每个选中点包含了多少个点。分析:之前写过两次都没写博客。。结果复习板题的时候,连题意都不知道。。。方法就是虚数板子#include#include#include#include#defineSFscanf#definePFprintf#defineMAXN300010#defineINF0x3
616156
·
2020-07-05 05:43
虚树
4月末开坑,4.29-?
4.29(-84)
bzoj3572
世界树,感觉自己从来没有好好写过虚树,不懂单调栈那套理论,在bx2k的启发下知道了一个好写好懂的写法(就是常数大),先对要处理点的dfs序进行排序,然后两两求lca,再对所有数进行排序
weixin_30521649
·
2020-07-04 02:01
2018.09.25
bzoj3572
: [Hnoi2014]世界树(虚树+树形dp)
传送门虚树入门题?好难啊。在学习别人的写法之后终于过了。这道题dp方程很好想。主要是不好写。简要说说思路吧。显然最优值只能够从子树和父亲转移过来。于是我们先dfs一遍用儿子更新父亲,然后再dfs一遍用父亲更新儿子。这样搞完之后可以统计出每个点所属的管辖点。然后统计。但这样单次跑是O(n)O(n)O(n)的不优秀。考虑优化算法的时间复杂度。注意到所有管辖点加起来只有O(n)O(n)O(n)个。因此我
SC.ldxcaicai
·
2018-09-25 20:32
#
树形dp
#
dp
#
虚树
[
BZOJ3572
] [ Hnoi2014 ] [ 虚树 ] [ 树形DP ] 世界树
学一发虚树这个树形DP是真的烦,都调发烧了……我说真的#include#include#includeusingnamespacestd;constintN=300010;intn,cnt,x,y,tms;intG[N],dfn[N],size[N];structedge{intt,nx;}E[N'9'||c='0'&&c=depth[y])x=fa[x][i];if(x==y)returnx;f
LowestJN
·
2017-06-13 20:45
DP
树形DP
虚树
[
BZOJ3572
][Hnoi2014]世界树(虚树+树形dp+二分+lca)
题目描述传送门题解首先建出虚树来,边权即为原树上的距离这题我dp的方法非常蠢f(i)表示从i的父边出去(必须经过i的父亲)到达的关键点的最短路fp(i)表示最短路的点g(i)表示i到i的子树中到达的关键点的最短路gp(i)表示最短路的点然后这两个互相转移一下…dp完了之后枚举虚树上的每一条边(u,v)因为已经知道了从u出去到关键点的最短路和从v出去到关键点的最短路然后就可以计算出这条边上的哪些点归
Clove_unique
·
2017-03-13 21:39
题解
dp
lca
省选
二分
虚树
【
bzoj3572
】世界树 虚树&树形dp
很明显的虚树题。 把关键点的虚树构建出来,然后可以两遍遍历得到离点i最近的关键点的距离和编号。那么现在考虑虚树中的一对点(x,y),x为y的某个儿子,考虑其对答案的影响。 由于是虚树,那么显然所有y->x的路径上的点,这个点延伸出去的点中(不包含由y->x的路径)不会有关键点存在,那么离这些点最近的虚树中的点,要么是x,要么是y,而且一定是先到达y->x的路径上的某一点,然后到
lych_cys
·
2016-03-07 09:00
DFS
LCA
树形DP
虚树
bzoj3572
: [Hnoi2014]世界树
题目链接
bzoj3572
题目描述Description世界树是一棵无比巨大的树,它伸出的枝干构成了整个世界。
zmh964685331
·
2016-02-23 20:00
[
bzoj3572
] [Hnoi2014]世界树
十分感人的一道题。。虚树+倍增。。想了半天发现我竟然会写?而且似乎想对了。。。。然而细节打挂调了一个下午>_j(i是父亲),计算贡献时要分两种情况:1、mnpos[i]==mnpos[j]:这时候,原树上i到j的那条链(不包括i和j)及其孩子都归mnpos[i]管辖了。我们可以先求出i往j那个方向的第一个孩子记为next,那么i->j这条边对mnpos[i]的贡献就是size[next]-next
czllgzmzl
·
2016-02-13 16:00
bzoj3572
: [Hnoi2014]世界树
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=3572思路:注意到m[1]+m[2]+…+m[q] #include #include #include constintmaxn=300010,maxm=600010,maxk=22; usingnamespacestd; intn,m,fa[maxn][maxk],dep[maxn],si
thy_asdf
·
2015-12-24 19:00
树形DP
虚树
【
BZOJ3572
】【Hnoi2014】世界树 虚树
链接:#include intmain() { puts("转载请注明出处[辗转山河弋流歌by空灰冰魂]谢谢"); puts("网址:blog.csdn.net/vmurder/article/details/46506883"); }题解:首先构建虚树,然后在虚树上DP。过程很简单。先找出每个虚树节点i旁边最近的询问节点neari(因为有一些lca也被加入了虚树所以虚树节点不全是询问节点,呃怕你
Vmurder
·
2015-06-15 19:00
BZOJ3572
Hnoi2014
虚树
世界树
bzoj3572
: [Hnoi2014]世界树
学习了一种新的树形结构——虚树,就是把每个树上是链的部分缩起来,再对这些在虚树上的点进行操。这题其实几天前就A掉了。。。只是题解还没写……这题有个很直观的想法,就是把询问点按dfs序排序,然后只保留相邻点的lca。然后再乱搞。。。然后有个很直观的感觉就是不可打(当然这是因为我太弱了。。。)然后去膜拜ydc神犇的代码。然后发现非常好写!然后还明白了这个东西叫做虚树。。。具体做法是:先建出虚树:求出l
IED98
·
2015-01-13 23:59
数据结构
上一页
1
下一页
按字母分类:
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
其他