数据结构
Thinking knife
I am a zufer。
展开
-
U41492 树上数颜色(dsu on tree)
#include<bits/stdc++.h>#define endl '\n'#define PB push_back#define ll long longusing namespace std;const int maxn = 1e5 + 10;int n, m, sum, hson;int siz[maxn], son[maxn], num[maxn], c[ma...原创 2020-01-27 11:29:54 · 316 阅读 · 2 评论 -
P3384 【模板】树链剖分
题目描述如题,已知一棵包含N个结点的树(连通且无环),每个节点上包含一个数值,需要支持以下操作:操作1: 格式: 1 x y z 表示将树从x到y结点最短路径上所有节点的值都加上z操作2: 格式: 2 x y 表示求树从x到y结点最短路径上所有节点的值之和操作3: 格式: 3 x z 表示将以x为根节点的子树内所有节点值都加上z操作4: 格式: 4 x 表示求以x为根节点的子树内所有节点...原创 2019-12-04 21:19:51 · 102 阅读 · 0 评论 -
P3810 【模板】三维偏序(陌上花开)(cdq分治)
#include<iostream>#include<cstring>#include<cstdio>#include<queue>#include<cstdlib>#include<cmath>#include<stack>#include<map>#include<string...原创 2019-11-18 13:37:09 · 90 阅读 · 0 评论 -
P3380 【模板】二逼平衡树(树套树)
#include<iostream>#include<cstring>#include<cstdio>#include<queue>#include<cstdlib>#include<cmath>#include<stack>#include<map>#include<string...原创 2019-11-17 21:39:00 · 119 阅读 · 0 评论 -
fhq 平衡树
P3369 【模板】普通平衡树(按照val值分裂)#include<bits/stdc++.h>#define random(x) ((rand() % x))#define endl '\n'using namespace std;const int maxn = 1e6 + 10;int m, sz;int size[maxn], ls[maxn], rs[maxn]...原创 2019-11-14 11:18:45 · 567 阅读 · 0 评论 -
可持久化并查集
并查集按秩合并#include<iostream>#include<cstring>#include<cstdio>#include<queue>#include<cstdlib>#include<cmath>#include<stack>#include<map>#include&l...原创 2019-11-13 15:00:17 · 99 阅读 · 0 评论 -
The 13th Chinese Northeast Collegiate Programming Contest H Skyscraper
#include <iostream>#include <cstring>#include <cstdio>#include <queue>#include <cstdlib>#include <cmath>#include <stack>#include <map>#include &...原创 2019-10-08 19:59:39 · 165 阅读 · 0 评论 -
「2017 山东一轮集训 Day2」Pair(线段树+尺取)
#include <iostream>#include <cstring>#include <cstdio>#include <queue>#include <cstdlib>#include <cmath>#include <stack>#include <map>#include &...原创 2019-10-08 16:09:34 · 153 阅读 · 0 评论 -
Vases and Flowers(二分+线段树)
#include<iostream>#include<cstring>#include<cstdio>#include<queue>#include<cstdlib>#include<cmath>#include<stack>#include<map>#include<string...原创 2019-09-10 20:29:22 · 89 阅读 · 0 评论 -
CCPC-Wannafly & Comet OJ 夏季欢乐赛(2019)茶颜悦色(扫描线)
#include<iostream>#include<cstring>#include<cstdio>#include<queue>#include<cstdlib>#include<cmath>#include<stack>#include<map>#include<string...原创 2019-08-17 14:26:05 · 170 阅读 · 0 评论 -
HDU Atlantis扫描线入门
#include<iostream>#include<cstring>#include<cstdio>#include<queue>#include<cstdlib>#include<cmath>#include<stack>#include<map>#include<string...原创 2019-08-17 14:25:13 · 125 阅读 · 0 评论 -
杭电多校第六场 snowy white
首先将纵坐标离散化。 将所有点按照横坐标排序,枚举矩形的上边界,然后往后依次加入每个点,这样就确定了 矩形的上下边界。设 v[y] 表示矩形内部纵坐标为 y 的点的权值和,则答案为 v 的最大子段和, 用线段树维护带修改的最大子段和即可。 时间复杂度 O(nlogn)。#include<iostream>#include<cstring>#include<cst...原创 2019-08-10 12:59:02 · 106 阅读 · 0 评论 -
杭电多校第三场 game 带修莫队
#include<iostream>#include<cstring>#include<cstdio>#include<queue>#include<cstdlib>#include<cmath>#include<stack>#include<map>#include<string...翻译 2019-08-06 14:21:09 · 117 阅读 · 0 评论 -
SPOJ GSS1 最大子段和(连续区间)
#include<iostream>#include<cstring>#include<cstdio>#include<queue>#include<cstdlib>#include<cmath>#include<stack>#include<map>#include<string...原创 2019-08-04 19:20:20 · 174 阅读 · 0 评论