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
BZOJ3522
【
bzoj3522
/4543】[POI2014]Hotel加强版(长链剖分+dp)
传送门神仙题。。简单版本很好做,做法也很多。加强版\(n\leq10^5\),显然之前的\(O(n^2)\)的做法时间、空间复杂度都不能承受。考虑维护以深度有关的\(dp\):\(f[i][j]\)表示以\(i\)为根节点的子树中,深度为\(j\)的点有多少个。显然这个很好维护,转移\(\displaystylef[i][j]=\sum_{k}f[k][j-1]\),我们可以用长链剖分加速。因为我
heyuhhh
·
2020-06-13 11:00
[
bzoj3522
][Poi2014]Hotel【树形dp】
【题目链接】https://www.lydsy.com/JudgeOnline/problem.php?id=3522【题解】有一种简单的方法是枚举中点然后统计答案。时间复杂度O(N2)但此题还有更巧妙的O(N)做法,见:https://blog.csdn.net/D_Vanisher/article/details/80040659#include#defineN1000100#definell
VanishD
·
2018-04-22 17:21
【树形dp】
[POI2014][
BZOJ3522
/4543]Hotel/[JZOJ5357]校门外的树
题目大意给定一棵n个点的树,求树上两两距离相等的点三元组个数。1≤n≤105题目分析考虑dp。令fx,i表示x为根的子树内,距离x为i的点的个数;gx,i表示以x为根的子树中,到x距离相等而且到lca的距离比lca到x距离要大i的点对个数(说白了就是那些可能的在x子树外的第三个点伸出了x子树i的距离)。然后在dp各个子树之前,我们有fx,0=1,ans+=gx,0。对于一个子树y,我们有ansgx
a_crazy_czy
·
2017-09-11 00:00
普通动态规划与递推
树链剖分
纪中OJ
BZOJ
计数问题
BZOJ4543/
BZOJ3522
[POI2014]Hotel加强版
这题真TM神……和commonc一起orz了半天题解-_-我们考虑一下dp,f[i][j]表示以i为根的子树里与i距离为j的点的个数,g[i][j]表示子树内有g[i][j]对点深度相同,且距离他们的LCA距离都为d,且i与他们的LCA的距离为d-j。换一种说法是表示以i为根的子树里有这么多个点对在底下分叉了,并且还没有第三个点和这个点对匹配,这个第3个点不在i的子树里并且与i距离为j的方案数(不
neither_nor
·
2016-04-29 07:05
BZOJ
DP
递推
神题-_-
BZOJ4533/
BZOJ3522
[POI2014]Hotel加强版
这题真TM神……和commonc一起orz了半天题解-_-我们考虑一下dp,f[i][j]表示以i为根的子树里与i距离为j的点的个数,g[i][j]表示以i为根的子树里有这么多个点对在底下分叉了,并且还没有第三个点和这个点对匹配,这个第3个点不在i的子树里并且与i距离为j的方案数(不考虑第三个点有多少种选法)、设x表示当前点,y表示儿子f[x][0]=1ans+=g[x][0]这样的话枚举出边,一
neither_nor
·
2016-04-29 07:00
上一页
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
其他