
树链剖分
文章平均质量分 63
Jacky35
这个作者很懒,什么都没留下…
展开
-
【GDOI2018Day2模拟4.18】奥利卡的诗
DescriptionInput从文件poem.in中读入数据. 第一行两个整数n. 接下来若干行有n个单词,用空格或回车隔开.Output输出到文件poem.out中. 输出n行n个整数,第i个整数表示elegancy(i).Sample Input输入1: 2 nyg nyxSample Output输出1: 6 18Data Constraintn<=105,∑|s|<=3∗1原创 2018-04-19 15:48:01 · 713 阅读 · 0 评论 -
【NOIP2017提高A组模拟10.5】Ping
DescriptionInputOutputSample Input5 4 2 1 5 3 3 1 4 3 2 2 4 3 2Sample Output1 2Solution如果是序列,可以知道,选的点一定是尽量靠右,贪心的脑补一下就可以证明了 树上的话就是尽量选LCA,原因是一样的 按照LCA的dfs序反着做,对于每一个限制,如果它上面没有点被选择,就选择这个LCA 实现用链原创 2017-10-05 22:49:22 · 371 阅读 · 0 评论 -
NOIP2016提高组 第一天第二题 天天爱跑步running 题解
题目描述小c同学认为跑步非常有趣,于是决定制作一款叫做《天天爱跑步》的游戏。«天天爱跑步»是一个养成类游戏,需要玩家每天按时上线,完成打卡任务。这个游戏的地图可以看作一一棵包含 个结点和 条边的树, 每条边连接两个结点,且任意两个结点存在一条路径互相可达。树上结点编号为从到的连续正整数。现在有个玩家,第个玩家的起点为 ,终点为 。每天打卡任务开始时,所有玩家在第秒同时从自己的起点出发, 以每秒跑一原创 2016-11-25 12:53:24 · 7296 阅读 · 2 评论 -
【GDOI2017模拟11.2】相位幻击
DescriptionInputOutput对于每个询问输出答案Sample Input3 1 2 1 3 1 2 3 2 C 1 1 Q 2 3Sample Output1Solution树链剖分裸题 你只需要知道一棵树的子树的dfs序是连续的就行了Code#include<cstdio>#include<algorithm>#include<cmath>#define fo(原创 2016-11-09 20:59:42 · 372 阅读 · 0 评论 -
【NOIP2016模拟7.11】树 题解+代码
题目描述输入输出样例输入5 5 1 2 1 3 2 4 2 5 Q 2 C 2 Q 2 Q 5 Q 3样例输出1 2 2 1数据范围n,m<=100000题解可以离线并查集倒着做,但是如果强制在线呢? 用树链剖分,可以点击看一下模板 对于这题的每个询问x,查询从x到1中的dfs序最大的点。对于修改x,直接把dfn[x]进行修改就行了。 但是回答时回答的是点而不是dfs序原创 2016-07-11 14:43:35 · 578 阅读 · 0 评论 -
【GDOI 2016 Day1】第四题 疯狂动物城 题解+代码
我恨码农题!!!题目大意一棵树,三个操作 1、从X到Y的路径上每个点的权值加Z 2、查询X到Y的一些神奇东西 3、将树回复到第X次操作后的状态输入第一行n,m。n个点,m个操作 接下来n-1行每行两个数表示X连到Y 接下来一行n个数:每个点的初始权值 接下来M行对应上面的三种操作(其中X和Y要亦或上次的答案)题解deep[i]表示深度,a[i]为i的权值 其中有40% 的数据是一条链,原创 2016-05-23 19:43:33 · 961 阅读 · 0 评论 -
树链剖分模板+讲解
树链剖分的详解这里写得很好。我的标程与它的做法一样。 树链剖分的作用相当于在树上做线段树。 模板题 【ZJOI2008】树的统计 在一颗树上,区间查询,单点修改。 I. CHANGE u t : 把结点u的权值改为t II. QMAX u v: 询问从点u到点v的路径上的节点的最大权值 III. QSUM u v: 询问从点u到点v的路径上的节点的权值和原创 2016-05-06 17:13:27 · 1062 阅读 · 0 评论