随笔分类 - 数据结构-线段树
摘要:洛谷 P2486 [SDOI2011]染色 洛谷传送门 题目描述 给定一棵 nn 个节点的无根树,共有 mm 个操作,操作分为两种: 将节点 aa 到节点 bb 的路径上的所有点(包括 aa 和 bb)都染成颜色 cc。 询问节点 aa 到节点 bb 的路径上的颜色段数量。 颜色段的定义是极长的连续
阅读全文
摘要:洛谷 P1505 [国家集训队]旅游 洛谷传送门 题目背景 Ray 乐忠于旅游,这次他来到了 T 城。T 城是一个水上城市,一共有 nn 个景点,有些景点之间会用一座桥连接。为了方便游客到达每个景点但又为了节约成本,T 城的任意两个景点之间有且只有一条路径。换句话说, T 城中只有 n-1n−1 座
阅读全文
摘要:洛谷 P4315 月下“毛景树” 洛谷传送门 题目描述 毛毛虫经过及时的变形,最终逃过的一劫,离开了菜妈的菜园。 毛毛虫经过千山万水,历尽千辛万苦,最后来到了小小的绍兴一中的校园里。 爬啊爬爬啊爬毛毛虫爬到了一颗小小的“毛景树”下面,发现树上长着他最爱吃的毛毛果 “毛景树”上有N个节点和N-1条树枝
阅读全文
摘要:JDOJ 2943: 线段树、树套树、分块 JDOJ传送门 Description 给出一个序列,要求支持以下操作: 1 x y : 输出[x,y]中最大的数字。 2 x y : 将序列的第x个数字改成y。 Input 第一行一个整数n,表示数列的长度。 第二行n个数,表示初始的序列。 第三行一个整
阅读全文
摘要:NOIP 2016 天天爱跑步 洛谷传送门 JDOJ传送门 Description Input Output Sample Input 6 3 2 3 1 2 1 4 4 5 4 6 0 2 5 1 2 3 1 5 1 3 2 6 Sample Output 2 0 0 1 1 1 HINT 题解:
阅读全文
摘要:JDOJ 1985: [HN3.22]雨天的尾巴 JDOJ传送门 Description 灼热的天气穿透了前半个夏天,后来一场大雨和随之而来的洪水,浇灭了一切。 虽然深绘里家乡的小村落对洪水有着顽固的抵抗力,但也倒了几座老房子,几棵老树被连 根拔起,以及田地里的粮食被弄得一片狼藉。 无奈的深绘里和村
阅读全文
摘要:洛谷 P4556 [Vani有约会]雨天的尾巴 /【模板】线段树合并 洛谷传送门 题目背景 深绘里一直很讨厌雨天。 灼热的天气穿透了前半个夏天,后来一场大雨和随之而来的洪水,浇灭了一切。 虽然深绘里家乡的小村落对洪水有着顽固的抵抗力,但也倒了几座老房子,几棵老树被连根拔起,以及田地里的粮食被弄得一片
阅读全文
摘要:浅谈线段树合并 本篇随笔浅谈一下线段树合并。 一、前置知识 线段树合并的前置知识有普通线段树、权值线段树、动态开点。 分别附上讲解博客: 简单线段树 权值线段树 动态开点线段树 二、线段树合并的概念 线段树合并,字面意思就是概念,把两棵动态开点的权值线段树合并到一起。 其实普通线段树也是可以线段树合
阅读全文
摘要:洛谷 P4211 [LNOI2014]LCA 洛谷传送门 题目描述 给出一个 nn 个节点的有根树(编号为 00 到 n-1n−1,根节点为 00)。 一个点的深度定义为这个节点到根的距离 +1+1。 设 dep[i]dep[i] 表示点i的深度,LCA(i,j)LCA(i,j) 表示 ii 与 j
阅读全文
摘要:SDOI 2014 旅行 洛谷传送门 JDOJ传送门 Description S国有N个城市,编号从1到N。城市间用N-1条双向道路连接,满足从一个城市出发可以到达其它所有城市。每个城市信仰不同的宗教,如飞天面条神教、隐形独角兽教、绝地教都是常见的信仰。为了方便,我们用不同的正整数代表各种宗教。 S
阅读全文
摘要:ZJOI 2008 树的统计 洛谷传送门 JDOJ传送门 Description 一棵树上有n个节点,编号分别为1到n,每个节点都有一个权值w。 我们将以下面的形式来要求你对这棵树完成一些操作: I. CHANGE u t 😗* 把结点u的权值改为t** II. QMAX u v: 询问从点u到点
阅读全文
摘要:USACO Hotel 洛谷传送门 JDOJ传送门 Description The cows are journeying north to Thunder Bay in Canada to gain cultural enrichment and enjoy a vacation on the s
阅读全文
摘要:VIJOS-P1083 小白逛公园 洛谷传送门 JDOJ传送门 Description 小新经常陪小白去公园玩,也就是所谓的遛狗啦…在小新家附近有一条“公园路”,路的一边从南到北依次排着n个公园,小白早就看花了眼,自己也不清楚该去哪些公园玩了。 一开始,小白就根据公园的风景给每个公园打了分。小新
阅读全文
摘要:JDOJ 1842 Magictree 题目传送门 Description Fox住在魔法岛上,他种了一排N棵魔法树(标号0..N-1,高度Ai),接下来的M天,每天Del都会来(Del是Fox的朋友),或者问Fox一些问题,或者帮助Fox对这些树施魔法.于是有两种形式: 1.询问第a棵树到第b棵树
阅读全文
摘要:洛谷 P3919 【模板】可持久化线段树 1(可持久化数组) 洛谷传送门 题目描述 如题,你需要维护这样的一个长度为 NN 的数组,支持如下几种操作 在某个历史版本上修改某一个位置上的值 访问某个历史版本上的某一位置的值 此外,每进行一次操作(对于操作2,即为生成一个完全一样的版本,不作任何改动),
阅读全文
摘要:详解主席树(可持久化线段树) 本篇随笔详细解读一下算法竞赛中的一种数据结构:主席树。(可持久化线段树) 前置知识当然是线段树,也应该有动态开点。 如果没有掌握请移步: 简单线段树详解 权值线段树详解 动态开点详解 一、关于可持久化 可持久化数据结构是一个家族,可持久化线段树只是其中的一部分。 关于可
阅读全文
摘要:浅谈动态开点线段树 本篇随笔简单讲解一下线段树的常见优化技巧——动态开点。 要学动态开点首先得会线段树,如果不会的话,看官请走这边—— 简单线段树详解 权值线段树详解 动态开点的概念和功能 现在要让你维护一棵值域为$10^9$的权值线段树。 掐指一算,按线段树开的话,四倍空间是$4\times10^
阅读全文
摘要:详解权值线段树 本篇随笔详细讲解一下算法竞赛中的一种数据结构——权值线段树。 前置知识 在讲解权值线段树之前,我们首先要明确:权值线段树属于一种线段树,它的本质仍然是线段树。所以在学习权值线段树之前,如果还对普通线段树并没有一个深刻的了解的话,请先移步这篇博客来学习简单线段树。 简单线段树知识点详解
阅读全文
摘要:洛谷 P3373 【模板】线段树 2 "洛谷传送门" 题目描述 如题,已知一个数列,你需要进行下面三种操作: 将某区间每一个数乘上 x x 将某区间每一个数加上 x x 求出某区间每一个数的和 输入格式 第一行包含三个整数 n,m,p n , m , p ,分别表示该数列数字的个数、操作的总个数和模
阅读全文