
树
lengxuenong
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
天天爱跑步——noip2016day1t2
2016年考到一片oier的题目。利用树上的差分来解决这个问题 参考题解:http://www.cnblogs.com/lyzuikeai/p/7451757.html 。先求出两个节点的lca,然后分成向上跑和向下跑两个链。 向上从起点跑到lca,这个过程累加,过了lca,对统计的贡献就没有了,减掉。因此就结点来说统计一个节点有多少人,就观察点i来说,如果观察点的值是wi,需要统计观察点下原创 2018-01-09 15:05:54 · 327 阅读 · 0 评论 -
树上的差分
主要用来决绝树上的区间修改、单点查询。 一般来说,先求出lca,分解为st-lca,end-lca,所以lca会多统计。 点的差分,lca上减去1,lca的父节点也减去1. 例题洛谷3128最大流 路径的差分 lca上减去2 例题poj3147 网络 noip2016天天爱跑步 noip2015运输计划原创 2018-01-12 16:19:29 · 314 阅读 · 0 评论 -
运输计划2015day2t3
看了gty的题解,写起来还是比较顺的,二分判断的时候判断关系没考虑周全, 参考题解:注意这个题目的特点: 我在哪里修虫洞决定了答案的优劣 答案是多少,我才能好决策哪里需要修虫洞(就好像学习有了目标 才能猛学) 哎呀好纠结怎么办? 如果能把答案固定住,然后再判断可不可行就好了 二分啊 二分一个答案。现在我们的目标是判断答案可不可行。 首先我们检查一下所有的运输线路,有哪些线路是不满足原创 2018-01-12 16:30:56 · 196 阅读 · 0 评论 -
tarjan求lca——luogu3319lca模板与1967货车运输
lca的tarjan求法,与并查集结合,离线完成 #include #include #include #include const int maxn=500009; using namespace std; struct node{ int v,id,next; node(int a=0,int b=0,int c=0):v(a),id(b),next(c){} }edge[2原创 2018-01-04 17:38:49 · 253 阅读 · 0 评论 -
P5203 [USACO19JAN]Exercise Route-树上的前缀和差分
题目大意:给出一颗树和m条边,统计两条有交集的边有多少种情况。 这样的题目我当然是抄题解啦。抄题解还花了好长时间才弄明白(自认为)。 题解说明 满足要求的跑步路线必须恰好包含两条“非标准”道路,于是我们研究两条“非标准”道路在什么情况下能构成环。我们称一条“非标准”道路两边的点在树上的路径为这条“非标准”道路在树上的path。我们发现,两条“非标准”道路能构成一个环当且仅当他们的path有重边...原创 2019-09-27 11:06:26 · 316 阅读 · 1 评论