dfs序
1035719430
浙江弱校弱选手
展开
-
bzoj2588(主席树+dfs序)
树上路径,我们考虑按照dfs序建主席树。 那我们通过差分的思想就可以搞出路径上数值建立的权值线段树。 #include<bits/stdc++.h> using namespace std; int n,m,hash[101000],t,t1,tp,hash_new[101000],bj[101000],f[101000],deep[101000],lastans; //has...原创 2018-07-21 11:50:25 · 224 阅读 · 0 评论 -
2018.7.30模拟赛T1(树hash,dfs序,集合hash)
描述 春天来了,万物复苏,动物们又到了发情的季节。蔡老板终于下定决心砍下了自家后院的两棵果树,并决定和自己喜欢的人一起分享果树上的果子。 这两棵果树一棵是长生果树另一棵是人参果树,两棵树上都有 n 个果子,编号为 1∼n,并分别由 n−1 段树枝连接起来。 为了把果子分成两份,蔡老板决定再两棵树上各砍一刀,分别砍断一根树枝把两棵树上的果子各分成两个部分。之后,对于每一棵果树,蔡老板会选择 1 ...原创 2018-07-30 23:19:16 · 194 阅读 · 0 评论 -
bzoj4212(trie,可持久化字典树,dfs序)
Description Hzwer成功培育出神牛细胞,可最终培育出的生物体却让他大失所望…… 后来,他从某同校女神 牛处知道,原来他培育的细胞发生了基因突变,原先决定神牛特征的基因序列都被破坏了,神牛hzwer很生气,但他知道基因突变的低频性,说不定还有以下优秀基因没有突变,那么他就可以用限制性核酸内切酶把它们切出来,然后再构建基因表达载体什么的,后面你懂的…… 黄学长现在知道了N个细胞的D...原创 2018-08-23 14:01:33 · 193 阅读 · 0 评论 -
bzoj3306(线段树,dfs序)
Description 给定一棵大小为 n 的有根点权树,支持以下操作: • 换根 • 修改点权 • 查询子树最小值 Input 第一行两个整数 n, Q ,分别表示树的大小和操作数。 接下来n行,每行两个整数f,v,第i+1行的两个数表示点i的父亲和点i的权。保证f < i。如 果f = 0,那么i为根。输入数据保证只有i = 1时,f = ...原创 2018-08-21 10:33:25 · 393 阅读 · 0 评论 -
2018.8.24(dfs序,线段树,动态树直径的维护)
题目大意: 对于一棵树,每次询问删掉两棵子树的直径 每次删掉两颗子树相当于在dfsdfsdfs序挖掉两段区间再求解 我们在dfsdfsdfs序上维护一段区间内点集的直径 每次询问的时候考虑合并 有这么一个结论 合并两个相邻联通块新的直径的两个端点肯定是原来两个联通块的直径的两个直径的端点 #include<bits/stdc++.h> using namespac...原创 2018-08-25 15:12:31 · 1225 阅读 · 0 评论 -
Codeforces Global Round 1 F(线段树,dfs序)
题目连接:https://codeforces.com/contest/1110/problem/F 题目大意: 给定一个 nnn 个点的树,满足存在一个 dfsdfsdfs 序 ppp 满足 p[i]=ip[i] = ip[i]=i 给出 qqq 组询问 (v,l,r)(v,l,r)(v,l,r) 问从 vvv 出发,到标号在 [l,r][l,r][l,r] 之间的叶子结点的最短路 挺蠢得一道...原创 2019-02-13 22:07:52 · 139 阅读 · 0 评论