![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
线段树
文章平均质量分 79
dominating大树置林
l love acm!
展开
-
hdu 1166 敌兵布阵
树状数组:#include#includeusing namespace std;int n,a[500010];char sh[500];int lowbit(int i){ return i&(-i);}int sum(int i){ int sum=0; while(i>0) { sum+=a[i];i-=lowbit(i); } return sum;原创 2014-08-29 17:12:15 · 409 阅读 · 0 评论 -
poj3264
#include#includeint tree[200005],tree2[200005],c[50005];int MAX(int a,int b){return a>b?a:b;}int MIN(int a,int b){return a<b?a:b;}void init(int l,int r,int pos){ int mid=(l+r)/2; if(l==r原创 2014-09-26 16:44:47 · 417 阅读 · 0 评论 -
hdu 4819 Mosaic
学习一波kuangbin大神的二维数组转载 2014-11-12 16:15:09 · 564 阅读 · 0 评论 -
hdu 5023 A Corrupt Mayor's Performance Art(线段树区间更新)
#include#include#include#includeusing namespace std;int tree[5001000],add[5001000];int color[50];int n,m;void pushup(int pos){ tree[pos]=tree[pos<<1]|tree[pos<<1|1]; //更新父节点}void pushdown原创 2014-12-07 19:31:41 · 654 阅读 · 0 评论 -
hdu 3911Black And White
题意:给定一个只包含0和1的字符串,每次操作将指定区间中的0变为1,1变为0,求指定区间最长连续1的长度;思路:线段树区间异或,成段更新;#include#include#include#define lson rt<<1#define rson rt<<1|1using namespace std;int sum[500010],lazy[500010];int preb[原创 2015-03-08 23:54:48 · 383 阅读 · 0 评论 -
hdu 1698 just a hook
题意:一根钩子原来每单位长度价值均为1,每次改变一段区间的价值,求处理后钩子的总价值。思路:线段树区间更新,区间求和,裸裸的模板题。#include#include#includeusing namespace std;int sum[500010],lazy[500010];void pushup(int rt){ sum[rt]=sum[rt<<1]+sum[rt<原创 2015-03-08 12:51:30 · 544 阅读 · 0 评论