图论—树—LCA/树上倍增
slongle_amazing
这个作者很懒,什么都没留下…
展开
-
[BZOJ1787][Ahoi2008]Meet 紧急集合&&[BZOJ1832][AHOI2008]聚会
传送门http://www.lydsy.com/JudgeOnline/problem.php?id=1787 http://www.lydsy.com/JudgeOnline/problem.php?id=1832题目大意给定一棵树,每次询问3个点到某一点的最小距离和题解某一点肯定在3个点互相的lca中的不同的一个点 //未完const maxn=500005;var w:array[0原创 2015-11-27 20:35:21 · 846 阅读 · 0 评论 -
图论总结
图存储邻接链表-前向星 procedure init(a,b,a:longint); begin w[len,1]:=b; w[len,2]:=c; if w[a,3]=0 then w[a,3]:=len else w[w[a,1],3]:=len; w[a,1]:=len; inc(len); end; readln(n,m); len:=n+1; //n:点数 m:边数原创 2015-06-04 20:54:18 · 1054 阅读 · 0 评论 -
[BZOJ3572] [Hnoi2014]世界树
传送门http://www.lydsy.com/JudgeOnline/problem.php?id=3572题目大意给定一棵树,每次给一些关键点,树上每个点都被离他最近的关键点支配,距离相同取编号小的关键点,每次询问每个关键点支配的点个数题解显然虚树(数据范围),主要在统计上 建出虚树后,我们先求出来虚树上的每个点被哪个关键点支配 这个两次DFS统计即可(一次用ii子树中的节点更新ii一次用i原创 2016-03-05 23:54:32 · 543 阅读 · 0 评论 -
[BZOJ3991] [SDOI2015]寻宝游戏
传送门http://www.lydsy.com/JudgeOnline/problem.php?id=3991题目大意给定一棵树,询问从某一关键点出发再回到该点遍历所有关键点的最短距离 支持加入1个和删除1个关键点题解首先最短路径一定是按照DFS序走 所以就动态维护关键点的DFS序就好了 (c++能用set!!我只好写了个SplayQAQAQAQ){$M 100000000,0,1000000原创 2016-03-06 13:57:16 · 922 阅读 · 0 评论 -
DP泛做
DP泛做[CF455 A] Boredom题目大意给定n个数,每次任选一个数ai,得到ai的得分,同时ai−1和ai+1都消失,无法再被选取,询问最大得分和给定n个数,每次任选一个数a_i,得到a_i的得分,同时a_i-1和a_i+1都消失,无法再被选取,询问最大得分和题解dp[i,1]:[1,i]的数都被处理完,i这个数被选的最大得分和dp[i,1]:[1,i]的数都被处理完,i这个数被选的最大得原创 2016-03-23 19:05:14 · 823 阅读 · 0 评论 -
[BZOJ3611] [Heoi2014]大工程
###题目大意给定一些树上的关键点询问1.两两之间的路径和2.两两之间的最长路径3.两两之间的最短路径原创 2016-03-04 18:47:03 · 672 阅读 · 0 评论 -
[BZOJ3879] SvT
传送门http://www.lydsy.com/JudgeOnline/problem.php?id=3879题目大意给定一个字符串 每次询问这个字符串得一些后缀两两之间的lcplcp之和题解建立反串的SAM得到后缀树 求点间的LCP转化为LCA 每次建立虚树就好了const maxn=500005;type data=record fa,len,key:longin原创 2016-03-02 20:39:38 · 654 阅读 · 0 评论 -
[BZOJ2286] [Sdoi2011]消耗战
传送门http://www.lydsy.com/JudgeOnline/problem.php?id=2286题目大意给定一棵树,树上有边权,切断一条边消耗边权大小的能量 每次给定一些关键点,使这些关键点都不能与1联通,询问最小代价题解树形DP dp[i]:使i不与它子树中任意一个关键点联通的最小代价dp[i]:使i不与它子树中任意一个关键点联通的最小代价 dp[i]=∑min{dp[son[原创 2016-03-01 20:30:55 · 1168 阅读 · 0 评论 -
[BZOJ1776] [Usaco2010 Hol]cowpol 奶牛政坛
传送门http://www.lydsy.com/JudgeOnline/problem.php?id=1776题目大意给定一棵有m种颜色染色的树,询问每种颜色中距离最远两点的距离题解距离最远两点中的一点一定为该种颜色中深度最大的点(这个证明可以参照树的直径的证明),然后枚举另一点求lca求距离判断即可var st:array[0..200005,0..30]of longint; w,u:arr原创 2015-12-07 17:52:07 · 398 阅读 · 0 评论 -
[CodeVS1036] 商务旅行
传送门http://codevs.cn/problem/1036/题目大意题解lca裸题const maxn=30005;var st:array[0..maxn,0..20]of longint; w:array[0..4*maxn,1..2]of longint; dep,t:array[0..maxn]of longint; i,j,k:longint; n,m,len,a,b,原创 2015-12-06 18:02:00 · 737 阅读 · 0 评论 -
20160403模拟
T1 小 R 的数学题(math)题目大意给定n,m求给定n,m求 ∑i=1nim(mod1e9+7)\sum_{i=1}^ni^m\pmod{1e9+7} 15pt:n≤106,m≤5∗10315pt:n\le10^6,m\le5*10^3 另35pt,n≤109,m=2,3,4,5另35pt,n\le10^9,m=2,3,4,5 另25pt,n≤109,m≤200另25pt,n\le1原创 2016-04-03 23:15:31 · 390 阅读 · 0 评论