随笔分类 -  LCA

倍增大法好orz
摘要:蒟蒻Ez3real冬令营爆炸之后滚回来更新blog... 我们看一道题 bzoj3924 ZJOI2015D1T1 幻想乡战略游戏 给一棵$n$个点的树$(n \leqslant 150000)$ 点上有点权 边上有边权 每个点度数不大于$20$ 你需要放置一个补给站 补给站供给某个点的代价等于它们 阅读全文
posted @ 2018-02-02 15:17 探险家Mr.H 阅读(215) 评论(0) 推荐(0)
摘要:题意: 给定n个字符串S1,S2,S3,...,Sn,把它们排序 设排序结果为Sp1,Sp2,Sp3,...,Spn 现在给定q个任务,每个任务的格式都是"要求在排序结果中Sa恰好在Sb前一个" 你排出的串满足第i个任务,就可以得到2^i(2的i次方)的奖励 现在有两个问题: 1.求相邻两项LCP平 阅读全文
posted @ 2018-01-11 22:30 探险家Mr.H 阅读(537) 评论(0) 推荐(0)
摘要:#include<iostream> #include<cstdlib> #include<cstring> #include<cstdio> #include<algorithm> #include<cmath> using namespace std; const int maxn=50010; 阅读全文
posted @ 2017-11-01 15:21 探险家Mr.H 阅读(147) 评论(0) 推荐(0)
摘要:GTMD天天爱跑步 #include<iostream> #include<cstdio> #include<cmath> #include<cstring> #include<vector> using namespace std; const int N=319998,P=300001; int 阅读全文
posted @ 2017-10-20 20:55 探险家Mr.H 阅读(182) 评论(0) 推荐(0)
摘要:题意:最大生成树上找 q组两个点的lca 然后求出u->lca->v这条路径上的最小边 倍增大法好 # include <iostream> # include <stdio.h> # include <stdlib.h> # include <algorithm> # include <strin 阅读全文
posted @ 2017-10-02 13:38 探险家Mr.H 阅读(89) 评论(0) 推荐(0)