线段树
罗旅洲
Hello World!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【线段树】矩形面积并
题目描述 给出n个矩形的左下角和右上角的坐标,求矩形面积的并。 矩形面积并指的是被矩形覆盖到的面积和,重叠部分仅算一次。 输入 多组输入,每组首先一个整数 n,代表矩形的数量; 接下来每行四个整数 x1,x2,y1,y2,表示左上角坐标(x1,y1)与右下角(x2,y2) 输出 每行一个整数,表示矩形的面积并。 数据范围 1 ≤\leq≤ n ≤\leq≤ 1e5 1 ≤\leq≤...原创 2020-02-23 11:41:03 · 2100 阅读 · 2 评论 -
划分树求第K大数
输入//1 5 4 8 7 3(第三大) 输出//5 #include #include #include using namespace std; int ans; #define N 100005 int a[N], as[N]; int n, m; int sum[20][N]; int tree[20][N]; void build(int c, int l,原创 2016-09-22 21:43:50 · 306 阅读 · 0 评论 -
二维线段树
#include #include #include using namespace std; int x,n,t; bool ans,f[4010][4010]; void updatey(int p,int q,int l,int r,int y1,int y2){ if(y1==l&&y2==r){ f[p][q]^=1; return; } int mid=(l+r)>>原创 2016-09-22 21:41:46 · 328 阅读 · 0 评论 -
次小生成树
#include #include #include #include #include using namespace std; const int maxn=30010,maxm=150010,INF=100000000; struct node{ int x,y,w,f; }; struct node a[maxm],tmp; int f[maxn],rank[maxn],pre[maxn原创 2016-09-22 21:40:29 · 284 阅读 · 0 评论 -
线段树求区间最值
#include #include #include const int maxn=200000+10; struct node{ int s; int l,r; }; struct node tree[maxn*10]; int a[maxn];原创 2016-09-14 19:28:35 · 384 阅读 · 0 评论
分享